Lender Authentication (Sign-in) — CGTMSE

Created by Rajatha B M, Modified on Fri, 27 Mar at 2:33 PM by Rajatha B M

What does this API do?

The CGTMSE Sign-in API generates an authentication token that is required for all subsequent CGTMSE business API calls. Member Lending Institutions (MLIs) — including banks, financial institutions, Small Finance Banks, RRBs, and NBFCs — use this token to prove their identity and authorise API requests to the CGTMSE service on the ULI Platform. The token is returned as a Bearer token and must be passed in the x-cgtmse-token header of every downstream CGTMSE API call.

Who can use it?

Any onboarded Member Lending Institution (MLI) that has subscribed to the CGTMSE service on the ULI Platform Developer Portal. Eligible institution types include scheduled commercial banks, small finance banks, regional rural banks (RRBs), NBFCs, and other financial institutions registered with CGTMSE.

Prerequisites

Complete all common platform prerequisites as described in Getting Started with ULI Platform APIs. Then ensure the following CGTMSE-specific steps are also complete:

  • CGTMSE service subscription: The CGTMSE service must be subscribed in the Platform Developer Portal separately for Sandbox and Production. Steps are available in the latest SOP for Lender Onboarding document (Section 10). Login credentials will be shared to the registered user's email.
  • CGTMSE credentials: Ensure you have received your CGTMSE-specific userName and password from CGTMSE (these are distinct from your ULI Platform JWT credentials).

API endpoints

EnvironmentURL
Sandbox (Non-Prod)https://extgw.nonprod.rbihub.io/cgtmse/signin/1.3/en
Productionhttps://extgw.api.rbihub.io/cgtmse/signin/1.3/en

HTTP Method: POST

URL path convention: /{service name}/{ver}/{lang} — for this API: service name = cgtmse/signin, ver = 1.3, lang = en

Headers

HeaderDescriptionExample
AuthorizationBearer JWT token generated by the ULI Platform Authentication service. Refer to the Authentication and Authorization API specification for token generation steps.Bearer <JWT token>
client-idBase64-encoded Client ID issued by the platform during lender registration.pNRxiviTvgBrf7qMANqBVskDYfEa
providerService provider code for CGTMSE.112
x-env-routeRequired only for Sandbox access. Not required in Production./sb
api-keyReserved for future use. A 24-character alphanumeric key issued during registration.434950ee34353tty33463399

Request body

The request body is a JSON-formatted encrypted payload following the standard platform envelope. The plain (unencrypted) request for the sign-in contains the lender's CGTMSE credentials:

{
  "userName": "testapi4@yopmail.com",
  "password": "Admin@123"
}

This plain payload is then encrypted and submitted as the data field within the standard platform envelope:

{
  "meta": {
    "ver": "1.3",
    "ts": "<ISO-8601 timestamp>",
    "txncode": "<unique transaction code>"
  },
  "hmac": "<SHA-256 hash of encrypted data value>",
  "data": "<encrypted payload>"
}
FieldDescription
meta.verVersion of the request template. Use 1.3.
meta.tsRequest initiation timestamp in ISO-8601 format (e.g. 2024-06-27T12:26:45+0530).
meta.txncodeUnique transaction code provided by the lender.
hmacSHA-256 hash of the value under the data key.
dataEncrypted request payload containing userName and password as per CGTMSE specification.

Plain payload fields:

FieldDescriptionConstraints
userNameCGTMSE-issued username for the lender.1–50 characters (error E805 if violated)
passwordCGTMSE-issued password for the lender.1–50 characters (error E806 if violated)

Response fields

On success, the platform returns the CGTMSE authentication token within the encrypted data field. The plain response is:

{
  "authToken": "<Bearer token string>",
  "type": "Bearer",
  "username": "testapi4@yopmail.com"
}

The full platform response envelope includes:

FieldDescription
result.errcodeError code. E000 indicates success; any other value indicates failure.
result.statusTransaction status (success or fail).
dataEncrypted response payload containing authToken, type, and username.
signatureDigital signature (SHA256withECDSA) of the data value for source verification.
hmacSHA-256 hash of the data value.
publickeyPlatform public key for verifying the signature.
sig-algoSigning algorithm used. Value: SHA256withECDSA.
meta.txncodeUnique transaction code echoed from the request.
meta.verVersion of the response template.
meta.tsTimestamp of the request in ISO-8601 format.

Important: Store the authToken value and pass it as the x-cgtmse-token header in all subsequent CGTMSE API calls.

Error codes

Error CodeDescription
E000Success — no error.
E801Authentication failed at CGTMSE.
E803Username is missing.
E804Password is missing.
E805Invalid username length — must be between 1 and 50 characters.
E806Invalid password length — must be between 1 and 50 characters.
E043Provider internal error (message is dynamic).

For platform-level error codes, refer to the latest Platform Error Code reference document available in the Platform API Spec folder on the Developer Portal.

Who to contact?

If you encounter an issue, email support@rbihub.in with the following details:

  • Subject: CGTMSE API Error
  • Platform Service Name: CGTMSE
  • Platform Environment: Sandbox / Production
  • Service Provider Code: 112
  • Request Payload (headers + body) sent to platform
  • Error Code received from the platform
  • Error Message received from the platform
  • Attachment: Screenshot or log of the error
  • Prerequisites status: IP Whitelisting, URL Whitelisting, Service Subscription, Token Generation

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article