Worked on the Lien Check Request, New Transaction Check Request, SMS Request and Lien Check Response, New Transaction Check Response, SMS Response

This commit is contained in:
Azeez Muibi
2025-03-19 17:27:16 +01:00
parent 5c848a8e30
commit af020dfc8a
+502
View File
@@ -114,6 +114,38 @@
"description": "Find out more",
"url": "https://www.simbrellang.net"
}
},
{
"name": "TokenValidation",
"description": "Validate token for user authentication",
"externalDocs": {
"description": "Find out more",
"url": "https://www.simbrellang.net"
}
},
{
"name": "LienCheck",
"description": "Check lien amount on account",
"externalDocs": {
"description": "Find out more",
"url": "https://www.simbrellang.net"
}
},
{
"name": "NewTransactionCheck",
"description": "Check status of transactions in asynchronous requests",
"externalDocs": {
"description": "Find out more",
"url": "https://www.simbrellang.net"
}
},
{
"name": "SMSRequest",
"description": "Send SMS notification",
"externalDocs": {
"description": "Find out more",
"url": "https://www.simbrellang.net"
}
}
],
"paths": {
@@ -680,6 +712,194 @@
}
]
}
},
"/ValidateToken": {
"post": {
"tags": [
"TokenValidation"
],
"summary": "Validate token for user authentication",
"description": "This method is used while users from FBN access Customer Care Portal. User will enter soft/hard token code. This will be captured and sent to this endpoint for validation.",
"operationId": "validateToken",
"requestBody": {
"description": "Post JSON to validate token",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidateTokenRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ValidateTokenResponse"
}
}
}
},
"400": {
"description": "Invalid request parameters"
},
"404": {
"description": "Resource not found"
},
"422": {
"description": "Validation exception"
}
},
"security": [
{
"apiKey": []
}
]
}
},
"/LienCheck": {
"post": {
"tags": [
"LienCheck"
],
"summary": "Check lien amount on account",
"description": "This method is used to get applied lien amount to the specific account",
"operationId": "lienCheck",
"requestBody": {
"description": "Post JSON to check lien amount",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LienCheckRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/LienCheckResponse"
}
}
}
},
"400": {
"description": "Invalid request parameters"
},
"404": {
"description": "Resource not found"
},
"422": {
"description": "Validation exception"
}
},
"security": [
{
"apiKey": []
}
]
}
},
"/NewTransactionCheck": {
"post": {
"tags": [
"NewTransactionCheck"
],
"summary": "Check status of transactions in asynchronous requests",
"description": "This new Transaction Check will be utilized for checking status of transactions in new Asynchronous requests. Request will be sent by Simbrella to check the status of Transaction on FirstBank side if Simbrella doesn't receive callback notification 5 minutes after initial request.",
"operationId": "newTransactionCheck",
"requestBody": {
"description": "Post JSON to check transaction status",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NewTransactionCheckRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NewTransactionCheckResponse"
}
}
}
},
"400": {
"description": "Invalid request parameters"
},
"404": {
"description": "Resource not found"
},
"422": {
"description": "Validation exception"
}
},
"security": [
{
"apiKey": []
}
]
}
},
"/SMS": {
"post": {
"tags": [
"SMSRequest"
],
"summary": "Send SMS notification",
"description": "The request is used to send SMS message",
"operationId": "smsNotification",
"requestBody": {
"description": "Post JSON to send SMS",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SMSRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SMSResponse"
}
}
}
},
"400": {
"description": "Invalid request parameters"
},
"404": {
"description": "Resource not found"
},
"422": {
"description": "Validation exception"
}
},
"security": [
{
"apiKey": []
}
]
}
}
},
"components": {
@@ -2108,6 +2328,288 @@
"description": "Description of provided result code"
}
}
},
"ValidateTokenRequest": {
"type": "object",
"required": [
"RequestId",
"UserId",
"CountryId",
"TokenCode"
],
"properties": {
"RequestId": {
"type": "string",
"example": "SMB1234567",
"description": "Unique Identifier in Simbrella system"
},
"UserId": {
"type": "string",
"example": "TMP0840",
"description": "Unique identifier of a user"
},
"CountryId": {
"type": "string",
"example": "01",
"description": "Set to static value '01'"
},
"TokenCode": {
"type": "string",
"example": "32365214",
"description": "Token code to be validated"
}
}
},
"ValidateTokenResponse": {
"type": "object",
"required": [
"Authenticated",
"AuthenticatedMessage",
"ResponseCode",
"ResponseMessage",
"RequestId"
],
"properties": {
"Authenticated": {
"type": "boolean",
"example": true,
"description": "Boolean value describing result of validation"
},
"AuthenticatedMessage": {
"type": "string",
"example": "The user Oluwole Olusoga has successfully authenticated!",
"description": "Message describing authentication"
},
"ResponseCode": {
"type": "string",
"example": "00",
"description": "Result code of response"
},
"ResponseMessage": {
"type": "string",
"example": "Successful",
"description": "Response description"
},
"RequestId": {
"type": "string",
"example": "SMB1234567",
"description": "Unique id that was sent in request"
}
}
},
"LienCheckRequest": {
"type": "object",
"required": [
"transactionId",
"customerId",
"accountId",
"countryId"
],
"properties": {
"transactionId": {
"type": "string",
"example": "SMB1234567",
"description": "Unique Identifier in Simbrella system"
},
"customerId": {
"type": "string",
"example": "123456",
"description": "Unique identifier of customer"
},
"accountId": {
"type": "string",
"example": "E9F77222920BAAB1C5ACF2253C6D6113",
"description": "Unique identifier of account"
},
"countryId": {
"type": "string",
"example": "01",
"description": "Set to static value '01'"
}
}
},
"LienCheckResponse": {
"type": "object",
"required": [
"lienAmount",
"resultCode",
"resultDescription"
],
"properties": {
"lienAmount": {
"type": "number",
"format": "double",
"example": 20000.0,
"description": "Lien amount applied to the account"
},
"resultCode": {
"type": "string",
"example": "00",
"description": "Result code of response"
},
"resultDescription": {
"type": "string",
"example": "Successful",
"description": "Response description"
}
}
},
"NewTransactionCheckRequest": {
"type": "object",
"required": [
"transactionId",
"debtId",
"transactionType",
"fbnTransactionId",
"origTransactionId",
"customerId"
],
"properties": {
"transactionId": {
"type": "string",
"example": "173021",
"description": "Unique identifier of request in Simbrella system"
},
"debtId": {
"type": "string",
"example": "173021",
"description": "Unique identifier of provided loan in Simbrella system"
},
"transactionType": {
"type": "string",
"example": "Disbursement",
"description": "Type of Transaction: 'Disbursement', 'Collection', or 'PenalCharge'"
},
"fbnTransactionId": {
"type": "string",
"example": "FBN2411011411413A74960",
"description": "Unique id of the transaction received from FBN in Eligibility or Provision requests"
},
"origTransactionId": {
"type": "string",
"example": "2411011411413A74960",
"description": "TransactionId sent by Simbrella within initial request to Firstbank API"
},
"customerId": {
"type": "string",
"example": "CN621868",
"description": "Unique identifier of a user"
}
}
},
"NewTransactionCheckResponse": {
"type": "object",
"required": [
"transactionId",
"data",
"resultCode",
"resultDescription"
],
"properties": {
"transactionId": {
"type": "string",
"example": "24110114545374721",
"description": "Unique identifier of request in Simbrella system"
},
"data": {
"type": "object",
"properties": {
"transactionId": {
"type": "string",
"example": "241101",
"description": "Unique identifier of transaction in Simbrella system that was sent for transaction check"
},
"providedAmount": {
"type": "number",
"format": "double",
"example": 1000.00,
"description": "Amount collected from user's account within disbursement operation"
},
"collectedAmount": {
"type": "number",
"format": "double",
"example": 0.00,
"description": "Amount collected from user's account"
},
"resultCode": {
"type": "string",
"example": "00",
"description": "Result code of the operation one sent for transaction check"
},
"resultDescription": {
"type": "string",
"example": "Loan Provision is successful",
"description": "Description of provided result code that was sent for transaction check"
}
}
},
"resultCode": {
"type": "string",
"example": "00",
"description": "Result code of executed transaction"
},
"resultDescription": {
"type": "string",
"example": "SUCCESS",
"description": "Description of provided result code"
}
}
},
"SMSRequest": {
"type": "object",
"required": [
"text",
"dest",
"unicode"
],
"properties": {
"text": {
"type": "string",
"example": "This is a test message for SMS request method.",
"description": "Message to send to customer"
},
"dest": {
"type": "string",
"example": "+2348039409144",
"description": "Phone Number in international format"
},
"unicode": {
"type": "boolean",
"example": false,
"description": "Character encoding standard (set as False)"
}
}
},
"SMSResponse": {
"type": "object",
"required": [
"data",
"statusCode",
"IsSuccessful",
"errorMessage"
],
"properties": {
"data": {
"type": "string",
"example": "",
"description": "Any additional data in response"
},
"statusCode": {
"type": "integer",
"example": 200,
"description": "Result code of executed process"
},
"IsSuccessful": {
"type": "boolean",
"example": true,
"description": "An Indicator that the process was successful or not"
},
"errorMessage": {
"type": "string",
"example": null,
"description": "Description of status code if process is failed, null if successful"
}
}
}
},
"securitySchemes": {