MTN SIM Swap Date

RATE THIS PAGE
Get SIM swap timestamp

Overview

Due to the increasing number of digital engagements and transaction across the world, the risk of account takeover is increasingly becoming a major concern for businesses and individuals. This risk is even more pertinent for organizations that use SMS to delivery one-time passcodes as a mechanism to fulfill two-factor authentication
With the MTN SIM Swap API, business can significantly reduce the risk of an account takeover by determining if a SIM swap has happened recently and take decisive action as a recent SIM swap could indicate fraudulent or suspicious activity.


Key Features
  • Account Takeover protection
  • Avoid sending OTP to compromised phone numbers
  • Additional level of assurance for authorizing high risk transactions. 


How it works:
  1. Get the customer’s phone number
  2. Call the API with the phone number as the input parameter
  3. The API returns the timestamp of the last or most recent SIM swap

Specifications

POST oauth/client/accesstoken
https://sandbox.api.chenosis.io/oauth/client/accesstoken?grant_type=client_credentials

Overview

The OAuth2 request.

Header parameters

Content-Type application/x-www-form-urlencoded

Query parameters

grant_type string

Body parameters

client_id string required
The client id fromt your app.
client_secret string required
The client secret fromt your app.

Request


curl --location --request POST 'https://sandbox.api.chenosis.io/oauth/client/accesstoken?grant_type=client_credentials'
    --header 'Authorization: token // https://sandbox.api.chenosis.io/oauth/client/accesstoken?grant_type=client_credentials'
    --header 'Content-Type: application/x-www-form-urlencoded'
    --data-raw '{
        "client_id": "xxxxxxxxxxxxxxx",
        "client_secret": "xxxxxxxxxxxxxxx",
    }'

Responses

200OK
refresh_token_expires_in string

When the token will expire

api_product_list string

The products associated

api_product_list_json json

The products associated

organization_name string

The organisation that is beign called against

developer.email string

The developer email

token_type string

The type of authorization

issued_at string

When the token was issued

client_id string

The Client ID from the app

access_token string

The Client Secret from the app

application_name string

The application ID

scope string

What scope has been applied

expires_in string

When the token will expire

refresh_count string

How many refreshes available

status string

The status of the request

{
    "refresh_token_expires_in": "0",
    "api_product_list": "[product_verify_experience]",
    "api_product_list_json": [
        "product_verify_experience"
    ],
    "organization_name": "prod",
    "developer.email": "[email protected]",
    "token_type": "BearerToken",
    "issued_at": "1617003906435",
    "client_id": "HJFGT565435GGh87qi6n88zstxiL26BG",
    "access_token": "wwNJdSTHF54RD476HMI8plZuwLp3",
    "application_name": "7879798543g-98jh-6yg5-7876-876hg5df4sd2",
    "scope": "USER-VERIFICATION",
    "expires_in": "3599",
    "refresh_count": "0",
    "status": "approved"
}
GET mobile/subscriber/{phoneNumber}/simswap-date
sandbox.api.chenosis.io/mobile/subscriber/{phoneNumber}/simswap-date

Overview

Retrieve last sim-sap date from network operator of subscriber as identified by phoneNumber.

Auth type

oauth2 authorisation required
Please checkout the documentation to review how to access the endpoint via oAuth 2.

Header parameters

Authorization string
This is the security token to consume the API. This value is retrieved from the field 'access_token' in the response received from envoking the authorization endpoint. The token value must be after the string 'Bearer' followed by a space before the token value
Content-Type application/json

URL variable parameters

phoneNumber string
ID of the subscriber is the MSISDN of the subscriber represented as International ITU-T E.164.

Request


curl --location --request GET 'https://sandbox.api.chenosis.io/mobile/subscriber/{phoneNumber}/simswap-date'
    --header 'Authorization: token // https://sandbox.api.chenosis.io/oauth/client/accesstoken?grant_type=client_credentials'
    --header 'Authorization: string'
    --header 'Content-Type: application/json'

Responses

200OK
statusCode string

HTTP error code extension

statusMessage string

Message.

phoneNumber string

phoneNumber provided in the input

data
lastSimSwapDate string

The date when the last sim swap performed on the SIM of the phoneNumber provided represented as an ISO 8601:2004 [ISO8601 2004] YYYY-MM-DDThh-mm-ss format. If the date cannot be determined, the value will be an empty string

transactionId string

transaction ID for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "phoneNumber": "string",
    "data": {
        "lastSimSwapDate": "string"
    },
    "transactionId": "string"
}
400Bad Request
statusCode string

HTTP error code extension

statusMessage string

5000-The input parameters provided are invalid. 5001-The query is invalid. 5002-The input parameters provided are invalid.

SupportMessage string

5000-Invalid MSISDN. 5001-Invalid Query. 5002-Optional clientID parameter expected by NQS.

transactionId string

Id for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string",
    "transactionId": "string"
}
401Unauthorized
statusCode string

HTTP error code extension

statusMessage string

More details and corrective actions related to the error which can be shown to a client.

SupportMessage string

Support Message

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string"
}
403Forbidden
statusCode string

HTTP error code extension

statusMessage string

More details and corrective actions related to the error which can be shown to a client.

SupportMessage string

Support Message

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string"
}
405Method Not Allowed
timestamp string

Error response code

status string

Text explaining the reason for the error

error string
message string

More error details and corrective measures

path string

{
    "timestamp": "string",
    "status": "string",
    "error": "string",
    "message": "string",
    "path": "string"
}
406Not Acceptable
timestamp string

Error response code

status string

Text explaining the reason for the error

error string
message string

More error details and corrective measures

path string

{
    "timestamp": "string",
    "status": "string",
    "error": "string",
    "message": "string",
    "path": "string"
}
408Request Timeout
statusCode string

HTTP error code extension

statusMessage string

The request timed out.

SupportMessage string

The server took too long to respond.

transactionId string

Id for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string",
    "transactionId": "string"
}
417Expectation Failed
statusCode string

HTTP error code extension

statusMessage string

1000-Subscriber not found.

SupportMessage string

1000-Network look-up indicates subscriber is Absent (Note: Previous information for subscriber may be available).

transactionId string

Id for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string",
    "transactionId": "string"
}
451Unavailable For Legal Reasons
statusCode string

HTTP error code extension

statusMessage string

1001-Subscriber error response.

SupportMessage string

1001-Network look-up returned an error No information for subscriber available.

transactionId string

Id for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string",
    "transactionId": "string"
}
422Unprocessable Entity
statusCode string

HTTP error code extension

statusMessage string

1002-Subscriber no response.

SupportMessage string

1002-No response received from network look-up.

transactionId string

Id for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string",
    "transactionId": "string"
}
500Internal Server Error
timestamp string

Error response code

status string

Text explaining the reason for the error

error string
message string

More error details and corrective measures

path string

{
    "timestamp": "string",
    "status": "string",
    "error": "string",
    "message": "string",
    "path": "string"
}
503Service Unavailable
statusCode string

HTTP error code extension

statusMessage string

The service is not available.

SupportMessage string

Provider API Internal server error.

transactionId string

Id for tracing.

{
    "statusCode": "string",
    "statusMessage": "string",
    "SupportMessage": "string",
    "transactionId": "string"
}

Pricing

100 free daily

Get SIM swap timestamp

$ 0 .00 PER
CALL
SUBSCRIBE
VIEW ALL
VIEW ALL