---
swagger: "2.0"
info:
description: This microservice is used to authenticate using an RSA Signature Validation.
version: 1.0.0
title: XLG-PAT-P-SignatureAuthentication
x-ibm-name: xlg-pat-p-signatureauthentication
basePath: /api
schemes:
- https
produces:
- application/json
paths:
/v1/x-global/security/rsa-signature/authenticate:
post:
tags:
- authenticate-rsa-signature
operationId: authenticate-rsa-signature
summary: To authenticate a channel using RSA signature
description: This API is used for authenticating a channel using an RSA Signature
consumes:
- application/json
produces:
- application/json
parameters:
- name: client_id
in: header
required: true
type: string
description: Client ID generated during application registration
- name: Authorization
in: header
required: true
type: string
description: The Authorization Token received during login
- name: Accept
in: header
required: true
type: string
description: Content-Types that are acceptable for the response
- name: uuid
in: header
required: true
type: string
description: 128 bit UUID that you generate for every request
- name: Accept-Language
in: header
required: false
type: string
description: List of acceptable human languages for response
- name: Content-Type
in: header
required: true
type: string
description: Content-Types that are sent in the request
- name: ChannelId
in: header
required: true
type: string
description: Channel where request originated
- name: countryCode
in: header
required: true
type: string
description: Country code in 2 character ISO 3166 format
- name: businessCode
in: header
required: true
type: string
description: Business code identified during application registration
- name: sid
in: header
required: true
type: string
description: SessionId sent by Consumer
- in: body
name: signatureValidationRequest
description: Request body for validating the RSA Signature generated.
required: true
schema:
$ref: '#/definitions/SignatureValidationRequest'
responses:
200:
description: Successful operation.
schema:
$ref: '#/definitions/SignatureValidationResponse'
400:
description:
Type | Code | Details |
error | invalidRequest | Missing
or invalid Parameters |
schema:
$ref: '#/definitions/ErrorResponse'
401:
description: Type | Code | Details |
error | unAuthorized | Authorization
credentials are missing or invalid |
schema:
$ref: '#/definitions/ErrorResponse'
403:
description: Type | Code | Details | More
Info |
error | accessNotConfigured | The request
operation is not configured to access this resource | Channel/Country/Business
provided in the request is not supported currently |
schema:
$ref: '#/definitions/ErrorResponse'
404:
description: Type | Code | Details | More
Info |
error | resourceNotFound | The requested
resource was not found | Empty resource/resource not found |
schema:
$ref: '#/definitions/ErrorResponse'
422:
description: Type | Code | Details |
error | businessValidationFailed | Business
validation error occured on one or more parameters |
schema:
$ref: '#/definitions/ErrorResponse'
500:
description: Type | Code | Details |
fatal | serverUnavailable | The
request failed due to an internal error/server unavailability |
schema:
$ref: '#/definitions/ErrorResponse'
definitions:
SignatureValidationRequest:
type: object
properties:
systemTimestamp:
type: integer
format: int64
example: 1593707701
description: System time stamp in milli seconds.
encryptedSignatureValue:
type: string
example: ae4435368782de536fe553ac6363
description: Signature generated by RSA encryption process.
required:
- systemTimestamp
- encryptedSignatureValue
SignatureValidationResponse:
type: object
properties:
sessionId:
type: string
example: "456489795456498"
description: Session Id.
ErrorResponse:
properties:
type:
type: string
description: Invalid - Request did not confirm to the specification and was
unprocessed and rejected. Please fix the value and try again
enum:
- error
- warn
- invalid
- fatal
code:
type: string
description: Error code which qualifies the error
details:
type: string
description: Human readable explanation specific to the occurrence of the
problem
location:
type: string
description: The name of the field that resulted in the error
moreInfo:
type: string
description: URI to human readable documentation of the error
uuid:
type: string
description: 128 bit UUID that it's generated for every request
timestamp:
type: string
description: Time registry of the error
x-ibm-configuration:
enforced: true
testable: true
phase: realized
securityDefinitions:
OAuth2 Application Flow:
type: oauth2
description: ""
flow: application
scopes:
/api/v1: ""
tokenUrl: https://api.banamex.com/mx-gcgapi/api/v1/oauth/token
Client ID:
type: apiKey
description: ""
in: header
name: X-IBM-Client-Id
security:
- OAuth2 Application Flow:
- /api/v1
Client ID: []
x-ibm-endpoints:
- endpointUrl: https://api.banamex.com/mx-gcgapi
type:
- production
- development
...