openapi: 3.0.1 info: title: Customer Sim Management description: "Customer Sim Management API exposes standardized endpoints for managing\ \ customer SIM lifecycle operations across multiple upstream provider systems.\ \ It consolidates activation, eSIM profile handling, SIM swaps, and related workflows\ \ with consistent error handling, observability, and robust validation." license: name: MADAPI url: https://developers.mtn.com/ version: 3.0.0 - Last updated date:2026-09-21 09:03:31 servers: - url: https://api.mtn.com/v1 description: Production Server security: - OAuth2: [] tags: - name: CustomerESimManagement - name: CustomerSimManagement paths: /customers/eSim/cancelOrder: put: tags: - CustomerESimManagement summary: Cancel an eSIM EsimProfile. description: Cancel a pending or in-progress eSIM profile transaction to halt download or activation. This protects against unintended provisioning and ensures downstream systems reflect the latest transaction state in a consistent manner. operationId: ESimService_put_cancelOrder_customerseSimcancelO parameters: - name: channelId in: header required: true schema: type: string - name: targetSystem in: header required: true schema: type: string - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: CancelOrderRequest type: object properties: eid: type: string finalProfileStatusIndicator: title: ProfileStatus type: object properties: value: type: string iccid: type: string matchingId: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_response_esim_OrderAPIResponse' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/eSim/confirmOrder: post: tags: - CustomerESimManagement summary: Confirm an Order. description: "Confirm and release an eSIM profile after provisioning so it can\ \ be downloaded to the device. Ensures idempotent processing, consistent error\ \ mapping, and audit-friendly metadata to support operational monitoring and\ \ retries." operationId: ESimService_post_confirmOrder_customerseSimconfirm parameters: - name: channelId in: header required: true schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: ConfirmOrderRequest type: object properties: eid: type: string iccid: type: string releaseFlag: type: boolean matchingId: type: string confirmationCode: type: string smdsAddress: type: string overrideProfileMetadata: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_response_esim_OrderAPIResponse' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/eSim/downloadOrder: post: tags: - CustomerESimManagement summary: Download an eSIM EsimProfile. description: "Request creation of a download order for an eSIM profile so that\ \ the device can be provisioned. The operation validates input, routes to\ \ the selected target system, and returns a normalized response with correlation\ \ identifiers for tracing." operationId: ESimService_post_downloadOrder_customerseSimdownloa parameters: - name: channelId in: header required: true schema: type: string - name: targetSystem in: header required: true schema: type: string - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: DownloadOrderRequest type: object properties: profileType: type: string iccid: type: string eid: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: DownloadOrderAPIResponse type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string transactionId: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/eSim/gsma/rsp2/es2plus/handleDownloadProgressInfo: post: tags: - CustomerESimManagement summary: Handle Download Progress Info. description: Receive asynchronous notifications describing the progress and status transitions of an eSIM download order. The callback supports GSMA ES2+ style payloads and produces normalized responses for observability. operationId: ESimService_post_callbackHandleDownloadProgressInfo_customerseSimgsmarsp requestBody: content: application/json: schema: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: OrderAPIResponse type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string data: title: ConfirmResponse type: object properties: matchingId: type: string smdpAddress: type: string eid: type: string message: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' transactionId: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/eSim/handleDownloadProgressInfo: post: tags: - CustomerESimManagement summary: Handle Download Progress Info. description: "Receive asynchronous notifications describing the progress and\ \ status transitions of an eSIM download order. The callback is designed for\ \ reliability, traceability, and compatibility with GSMA-aligned providers." operationId: ESimService_post_handleDownloadProgressInfo_customerseSimhandleD parameters: - name: channelId in: header required: true schema: type: string - name: queryType in: header required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: HandleDownloadInfo type: object properties: profileType: type: string iccid: type: string eid: type: string timestamp: type: string imei: type: string tac: type: string notificationPointId: type: string data: title: HandleDownloadInfoData type: object properties: statusMessage: type: string message: type: string callbackUrl: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_response_esim_OrderAPIResponse' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/eSim/profile: get: tags: - CustomerESimManagement summary: Get eSIM profile details. description: "Query eSIM profile details using flexible filters such as ICCID,\ \ IMSI, and profile type. Results are normalized across providers to support\ \ consistent client logic and robust operational troubleshooting." operationId: ESimService_get_getESIMProfile_customerseSimprofile parameters: - name: channelId in: header required: false schema: type: string - name: iccid in: query required: false schema: type: string - name: imsi in: query required: false schema: type: string - name: profileType in: query required: false schema: type: string - name: queryType in: query required: true schema: type: string - name: state in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: BaseProfileResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false put: tags: - CustomerESimManagement summary: Reset EsimProfile INVIGO information. description: Reset eSIM profile information in the backing platform to clear or refresh stale state. This supports reconciliation workflows and reduces friction during re-provisioning while maintaining strict validation and auditing. operationId: ESimService_put_resetProfileInfo_customerseSimprofile parameters: - name: queryType in: header required: true schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_request_esim_ProfileInformationRequest' required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_response_esim_ProfileAPIResponse' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false post: tags: - CustomerESimManagement summary: Get eSIM EsimProfile information. description: "Retrieve authoritative information about an eSIM profile based\ \ on provided identifiers. The endpoint harmonizes provider-specific fields,\ \ enabling client applications to make reliable lifecycle and troubleshooting\ \ decisions." operationId: ESimService_post_getProfileInformation_customerseSimprofile parameters: - name: channelId in: header required: true schema: type: string - name: targetSystem in: header required: true schema: type: string - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: ProfileInformationRequest type: object properties: iccid: type: string includeMetadata: type: boolean required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: ProfileAPIResponse type: object properties: statusMessage: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string statusCode: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string transactionId: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/sim/activity: post: tags: - CustomerSimManagement summary: Provides customer activity information about the sim card linked to an msisdn. description: "The Number Activity API summarizes recent customer activity derived\ \ from monetized network events and service usage. It highlights whether a\ \ subscriber is active, dormant, or churn-risk based on observed interactions,\ \ enabling smarter engagement, eligibility checks, and operational decision-making." operationId: CustomerSimService_post_getSimNumberActivity_customerssimactivity parameters: - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/com_mtn_madapi_template_dto_request_gh_EVASIMInfoRequestGha' required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: PhoneNumberActivityResponse type: object properties: firstActivationDate: type: string lastActivityDate: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/sim/alternativeData: post: tags: - CustomerSimManagement summary: Provides customer data information about the sim card linked to an msisdn. description: "The Customer Data API exposes alternative network-derived insights\ \ for a given MSISDN to support analytics, risk assessment, and service personalization.\ \ It returns telco-sourced behavioral indicators over a requested period with\ \ strict validation and consistent error handling for downstream consumers." operationId: CustomerSimService_post_getSimCustomerData_customerssimalternat parameters: - name: encryptionKey in: header required: true schema: type: string - name: end-date in: header required: true schema: type: string - name: max-result in: header required: true schema: type: string - name: page-number in: header required: true schema: type: string - name: page-size in: header required: true schema: type: string - name: start-date in: header required: true schema: type: string - name: transactionId in: query required: false schema: type: string - name: webhookUrl in: header required: true schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: EVASIMInfoRequestGha type: object properties: msisdn: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: CustomerDataResponse type: object properties: momo: title: Momo type: object properties: momoCashoutWithdrawalValue: type: number format: double momoPaymentOutTransaction: type: integer format: int32 dailyMeanMomoWalletBalance: type: number format: double dailyMedianMomoWalletBalance: type: number format: double daysUnderGhc10MomoWalletBalance: type: integer format: int32 maximumMomoWalletBalance: type: number format: double momoPaymentInTransaction: type: integer format: int32 standardDeviationMomoWalletBalance: type: number format: double daysOverGhc100MomoWalletBalance: type: integer format: int32 momoCashoutWithdrawalVolume: type: integer format: int32 daysOverGhc10MomoWalletBalance: type: integer format: int32 daysOverGhc1000MomoWalletBalance: type: integer format: int32 zeroMomoWalletBalance: type: integer format: int32 minimumMomoWalletBalance: type: number format: double daysOverGhc500MomoWalletBalance: type: integer format: int32 data: title: DataUsage type: object properties: dataUsageMb: type: number format: double stddevDataBalance: type: number format: double dataTopUp: type: integer format: int32 dailyMeanDataBalance: type: number format: double zeroDataBalance: type: integer format: int32 minimumDataBalance: type: number format: double daysOver1000mbDataBalance: type: integer format: int32 daysOver10mbDataBalance: type: integer format: int32 daysOver100mbDataBalance: type: integer format: int32 maximumDataBalance: type: number format: double daysUnder10mbDataBalance: type: integer format: int32 daysOver500mbDataBalance: type: integer format: int32 airtime: title: Airtime type: object properties: daysOverGhc10AirtimeBalance: type: integer format: int32 airtimeTopUpHistory: type: number format: double daysOverGhc500AirtimeBalance: type: integer format: int32 daysOverGhc1000AirtimeBalance: type: integer format: int32 daysOverGhc100AirtimeBalance: type: integer format: int32 dailyMeanAirtimeBalance: type: number format: double airtimeUsageGhc: type: number format: double minimumAirtimeBalance: type: number format: double maximumAirtimeBalance: type: number format: double zeroAirtimeBalance: type: integer format: int32 daysUnderGhc10AirtimeBalance: type: integer format: int32 standardDeviationAirtimeBalance: type: number format: double calls: title: Calls type: object properties: callsReceivedVolume: type: integer format: int32 callsMadeVolume: type: integer format: int32 voiceMonthDuration: type: integer format: int32 device: title: Device type: object properties: deviceModel: type: string deviceManufactuerer: type: string durationWithDevice: type: integer format: int32 deviceType: type: string subscriptionDetails: type: string smsVolumeSent: type: integer format: int32 tenure: type: integer format: int32 "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/sim/recycleStatus: post: tags: - CustomerSimManagement summary: Provides customer SIM recycle status about the sim card linked to an msisdn. description: "The Number Recycle API evaluates an MSISDN’s current lifecycle\ \ and risk of reallocation to help prevent fraud, reduce misdirected communications,\ \ and optimize number inventory. It enables reliable outreach by surfacing\ \ status signals sourced from core network and provisioning systems." operationId: CustomerSimService_post_getSimNumberRecycleStatus_customerssimrecycleS parameters: - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/com_mtn_madapi_template_dto_request_gh_EVASIMInfoRequestGha' required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: PhoneNumberRecycleStatusResponse type: object properties: numberRecycleStatus: type: boolean recycleDate: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/sim/resourcePool: get: tags: - CustomerSimManagement summary: Retrieve available MSISDNs. description: Retrieve available MSISDNs. A customer who needs a new connection can pick a desired number from the returned list. operationId: CustomerSimService_get_availableMsisdn_customerssimresource parameters: - name: numberOfRec in: query required: false schema: type: integer format: int32 - name: pattern in: query required: false schema: type: string - name: resourceType in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: true schema: type: string - name: x-origin-channelid in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: APIResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/sim/registrationStatus: get: tags: - CustomerSimManagement summary: Retrieve Customer Registration Status by customerId. description: "Fetch the registration status for a specific subscriber identified\ \ by customerId, returning authoritative flags sourced from core registration\ \ systems. Results include standardized error semantics and traceability fields\ \ to streamline troubleshooting across environments." operationId: CustomerSimService_get_customerSim_customerscustomerIds parameters: - name: countryCode in: header required: true schema: type: string - name: customerId in: path required: true schema: type: string - name: transactionId in: query required: false schema: type: string - name: type in: query required: false schema: type: string - name: x-origin-channelid in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: CustomerSimResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string data: type: array items: title: CustomerSimResponseData type: object properties: id: type: string name: type: string status: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/sim/resourcePool/reserve: post: tags: - CustomerSimManagement summary: Reserve a resource such as an MSISDN description: Reserve a resource such as an MSISDN so that it cannot be retrieved in the operation for retrieving available resources (MSISDN's) operationId: CustomerSimService_post_reserveResource_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string - name: x-origin-channelid in: header required: false schema: type: string requestBody: content: application/json: schema: title: ReserveResourceData type: object properties: numberOfRec: type: integer format: int32 resources: type: array items: title: Resource type: object properties: id: type: string resourceType: $ref: '#/components/schemas/com_mtn_aggregator_enums_ResourceType' value: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_response_APIResponse' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/sim/resourcePool/starterPack: post: tags: - CustomerSimManagement summary: Create a starter pack for SIM registration description: "Create a starter pack using MSISDN and SIM serial to initiate\ \ SIM registration flows. The request is validated, routed to the correct\ \ upstream system, and the response is normalized with correlation identifiers\ \ to support troubleshooting, monitoring, and idempotent client behavior." operationId: CustomerSimService_post_createStarterPack_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string requestBody: content: application/json: schema: title: StarterPackRequest type: object properties: imsi: type: string iccid: type: string ki: type: string simType: type: string productId: type: string msisdnId: type: string simId: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: StarterPackResponse type: object properties: statusMessage: type: string createdAt: type: string transactionId: type: string statusCode: type: string customerId: type: string error: title: APIError type: object properties: statusMessage: type: string supportMessage: type: string transactionId: type: string timestamp: type: string path: type: string method: type: string statusCode: type: string downstreamStatusCode: type: integer format: int32 sequenceNo: type: string data: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/sim/simDetails: get: tags: - CustomerSimManagement summary: Provides additional information about the sim card linked to an msisdn. description: Retrieves comprehensive SIM metadata including keys and identifiers required for customer care and regulated workflows. Access is constrained by input checks and subject to consistent error handling to protect subscribers and dependent systems. operationId: CustomerSimService_get_customerSimDetails_customerscustomerIds parameters: - name: channel in: query required: false schema: type: string - name: customerId in: path required: true schema: type: string - name: customerIdType in: query required: false schema: type: string - name: depth in: query required: false schema: type: string - name: endDate in: query required: false schema: type: string - name: expand in: query required: false schema: type: string - name: fields in: query required: false schema: type: string - name: limit in: query required: false schema: type: string - name: operation in: query required: false schema: type: string - name: pageNumber in: query required: false schema: type: string - name: requestorId in: query required: false schema: type: string - name: startDate in: query required: false schema: type: string - name: status in: query required: false schema: type: string - name: subType in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: type in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string - name: x-origin-channelid in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: SIMValidationDetailResponse type: object properties: data: type: array items: title: SimValidationDetailResponseData type: object properties: data: title: Data type: object properties: requestType: type: string requestSubtype: type: string customertype: type: string resourceType: type: string offlineVerification: type: string biometricUpdateType: type: string consentType: type: string businessType: type: string customerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string Type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string identification: title: Identification type: object properties: customFields: title: CustomFields type: object properties: vnin: type: string agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string document: type: array items: title: Document type: object properties: href: type: string id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string channel: title: Channel type: object properties: id: type: string verificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegFingerPrint: title: SimRegFingerPrint type: object properties: value: type: string byPass: type: string reason: type: string note: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string SimRegFace: title: SimRegFace type: object properties: value: type: string byPass: type: string reason: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string nimcSimRegImg: title: NimcSimRegImg type: object properties: value: type: string byPass: type: string reason: type: string nimcFace: title: NimcFace type: object properties: value: type: string byPass: type: string reason: type: string eyeballing: title: Eyeballing type: object properties: userName: type: string action: type: string lockedTill: type: string actionSubType: type: string remarks: type: string title: type: string firstName: type: string middleName: type: string lastName: type: string fullname: type: string maritalStatus: type: string gender: type: string dateOfBirth: type: string nationality: type: string residentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string motherName: type: string religion: type: string stateOfOrign: type: string lga: type: string occupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string languagePref: type: string isForeigner: type: string foreignerType: type: string visitor: type: string emailAddress: type: string phoneNumber: type: string socialMediaDetail: type: array items: title: SocialMediaDetail type: object properties: name: type: string link: type: string sim: title: Sim type: object properties: id: type: string reservationID: type: string Number: type: string msisdn: title: Msisdn type: object properties: id: type: string reservationId: type: string value: type: string momo: title: Momo type: object properties: enable: type: string type: type: string orderDetails: title: OrderDetails type: object properties: id: type: string itemId: type: string maxNDataList: type: array items: title: MaxNDatum type: object properties: status: type: string publicIdentifier: type: string id: type: string customerID: type: string role: type: string imsiNumber: type: string productDetails: type: array items: title: ProductDetail type: object properties: status: type: string publicIdentifier: type: string id: type: array items: type: string customerID: type: string role: type: string productIds: type: array items: type: string privateIdentifier: type: string simInformation: title: SimInformation type: object properties: value: type: string lastModifiedDate: type: string resourceCharacteristics: title: ResourceCharacteristic type: object properties: code: type: string status: type: string message: type: string data: type: array items: title: ResourceDatum type: object properties: code: type: string name: type: string value: type: string valueType: type: string publicIdentifier: type: string name: type: string value: type: string valueType: type: string pin1: type: string pin2: type: string puk1: type: string puk2: type: string imsiNumber: type: string kinNumberData: type: string cardProfile: type: string kindValue: type: string code: type: string name: type: string value: type: string valueType: type: string transactionId: type: string customerId: type: string registrationDate: type: string orderDetails: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_OrderDetails' createdDate: type: string statusCode: type: string substatus: type: string statusCode: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' statusMessage: type: string supportMessage: type: string transactionId: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false patch: tags: - CustomerSimManagement summary: Update or upgrade details of a customer's SIM description: "Update or upgrade customer SIM attributes such as status and profile-relevant\ \ fields. The operation validates payload structure and semantics, applies\ \ guardrails to prevent unsafe changes, and returns consistent outcomes with\ \ identifiers for observability and support workflows." operationId: CustomerSimService_patch_customerSimDetails_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string requestBody: content: application/json: schema: title: SimDetails type: object properties: data: type: array items: title: SimDetailsData type: object properties: user: type: string docTitle: type: string docType: type: string docAuthor: type: string securityGroup: type: string directReleaseNewCheckInDoc: type: string docAccount: type: string base64: type: string recordStatus: type: string customerId: type: string customerPhotoType: type: string biometricType: type: string submissionDate: type: string channel: type: string documentName: type: string channelRefId: type: string customerMsisdn: type: string updateDate: type: string fingerprintNumber: type: string customerMsisdnAdditional: type: string doFileCopy: type: string parentGuid: type: string application: type: string primaryFileName: type: string primaryFilePath: type: string content: type: string newSIMSwapData: type: array items: title: NewSIMSwapData type: object properties: serviceRequests: title: ServiceRequest type: object properties: salesDetails: title: SalesDetails type: object properties: location: type: string salesChannel: title: SalesChannel type: object properties: masterCode: type: string upgrade: type: string isOtpValidaate: type: string selectedActionType: type: string serviceRequestContactType: title: ServiceRequestContactType type: object properties: masterCode: type: string instantSimSwap: type: string serviceRequestComments: type: string userDetails: title: UserDetails type: object properties: userName: type: string loginName: type: string customerInfo: title: CustomerInfo type: object properties: serviceNumber: type: string customerCode: type: string serviceCode: type: string accountCode: type: string noSwapByPass: type: string swapReferenceNumber: type: string agentMSISDN: type: string agentName: type: string agentEmailID: type: string requestor: title: Requestor type: object properties: requestorName: type: string requestorCode: title: RequestorCode type: object properties: masterCode: type: string identificationDetail: type: array items: title: IdentificationDetail type: object properties: name: type: string idType: title: IdType type: object properties: masterCode: type: string documentPurpose: title: DocumentPurpose type: object properties: masterCode: type: string uploadChannel: title: UploadChannel type: object properties: masterCode: type: string idNumber: type: string type: type: string uploadedDocument: type: array items: title: UploadedDocument type: object properties: idType: type: string documentPurpose: type: string channelRefID: type: string documentName: type: string documentRequired: type: string submissionDate: type: string uploadedFileName: type: string offlineUploadMode: type: string uploadDocumentEnableFlag: type: string proxySwap: type: string isSubmitAPIFlag: type: string newSimDetails: title: NewSimDetails type: object properties: simType: title: SimType type: object properties: masterCode: type: string imsiNumber: type: string pukNumber: type: string simCategory: title: SimCategory type: object properties: masterCode: type: string simNumber: type: string serviceRequestType: title: ServiceRequestType type: object properties: masterCode: type: string serviceRequestSubType: title: ServiceRequestSubType type: object properties: masterCode: type: string validationRequired: type: string effectiveType: type: string requestLevel: type: string charges: title: Charges type: object properties: upfront: title: Upfront type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string billing: title: Billing type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string serviceRequestCreationDate: title: ServiceRequestCreationDate type: object properties: dollardate: type: string serviceRequestProcessingDate: title: ServiceRequestProcessingDate type: object properties: dollardate: type: string effectiveDate: type: string serviceRequestReason: title: ServiceRequestReason type: object properties: masterCode: type: string evalidatorData: title: EvalidatorData type: object properties: validatedResponse: title: ValidatedResponse type: object properties: requiredScore: type: string actualScore: type: string response: type: array items: title: ResponseList type: object properties: responseType: type: string evalidatorTypes: title: EvalidatorTypes type: object properties: evalidatorType: type: string simChangeSelectionType: type: string selctedFormData: type: string eValidatorFinalSubmitData: type: array items: title: EValidatorFinalSubmitData type: object properties: question: type: string providedData: type: string result: type: string paymentDetails: title: PaymentDetails type: object properties: paymentDate: title: PaymentDate type: object properties: dollardate: type: string paymentType: type: string amount: title: Amount type: object properties: value: type: number format: double unit: type: string ninIncluded: type: string ninDetails: title: NinDetails type: object properties: agentId: type: string agentMsisdn: type: string ninId: type: string ninStatus: type: string emailId: type: string pinRef: type: string referenceNumber: type: string documentChannel: type: string idType: type: string documentId: type: string verificationType: type: string customerSimRegRequest: type: string simRegImgMatchParent: type: string nimcImgMatchPercent: type: string nimcOfflineFlag: type: string consentType: type: string fingerprintPosition: type: string referralCode: type: string requestType: type: string vNIN: type: string userId: type: string firstName: type: string lastName: type: string dateOfBirth: type: string firstNameMatch: type: string lastNameMatch: type: string dateOfBirthMatch: type: string nimcSimRegFMPercent: type: string sequenceNumber: type: string nimcData: title: NimcData type: object properties: birthCountry: type: string birthDate: type: string birthLga: type: string birthState: type: string centralId: type: string educationalLevel: type: string email: type: string employmentStatus: type: string firstName: type: string gender: type: string heigth: type: string maritalStatus: type: string middleName: type: string nin: type: string nokAddress1: type: string nokAddress2: type: string nokFirstname: type: string nokLga: type: string nokMiddlename: type: string nokState: type: string nokSurname: type: string nokTown: type: string nativeLanguage: type: string otherLanguage: type: string otherName: type: string previousFirstName: type: string previousMiddleName: type: string profession: type: string previousLastName: type: string religion: type: string residenceAddressLine1: type: string residenceTown: type: string residenceLga: type: string residenceState: type: string residenceStatus: type: string selfOriginLga: type: string selfOriginPlace: type: string selfOriginState: type: string surname: type: string telephoneNo: type: string title: type: string cardStatus: type: string documentNumber: type: string trackingId: type: string relatedParty: type: array items: title: RelatedParty type: object properties: id: type: string value: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: SimUpgradeResponse type: object properties: transactionId: type: string statusCode: type: string referenceNumber: type: string statusMessage: type: string sequenceNo: type: string serviceRequestNumber: type: string serviceRequestStatus: type: string orderStatus: type: string errorTransactionId: type: string status: type: string additionalStatus: title: AdditionalStatus type: object properties: statusCode: type: string statusMessage: type: string customReference: title: CustomReference type: object properties: refType: type: string refValue: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/sim/simDetails/validate: post: tags: - CustomerSimManagement summary: Provides additional information about the sim card linked to an msisdn. description: "Returns sensitive SIM attributes such as SIM Number, PIN1, PIN2,\ \ PUK1, PUK2, TransportKey, KI, IMSI, KIT, and VIP flags when applicable.\ \ The endpoint enforces rigorous request validation, structured auditing,\ \ and consistent response envelopes for consumer safety." operationId: CustomerSimService_post_customerSimDetailValidation_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: operation in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: MaxNReach type: object properties: simDetails: title: SimDetails type: object properties: value: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: SIMMaxNReachResponse type: object properties: maxNReached: type: boolean count: type: integer format: int32 customerId: type: string ids: type: array items: type: string data: type: array items: title: CustomerData type: object properties: customerIdentification: title: CustomerIdentification type: object properties: status: type: string publicIdentifier: type: string idNumber: type: string customerID: type: string role: type: string statusCode: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' statusMessage: type: string supportMessage: type: string transactionId: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/sim/submitRequest: post: tags: - CustomerSimManagement summary: MoMo onboarding SIM request. description: "Create a SIM request for MoMo onboarding with strict validation,\ \ downstream routing, and standardized error semantics. The endpoint coordinates\ \ with ACS to reserve or provision identifiers while returning traceable,\ \ policy-compliant responses." operationId: CustomerSimService_post_makeSimRequest_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string requestBody: content: application/json: schema: title: MomoOnboardingSimRequest type: object properties: requestTimestamp: type: string requestId: type: string simRequestTypeId: type: string customerData: title: CustomerData type: object properties: personalInfo: title: PersonalInfo type: object properties: residentialAddress: title: ResidentialAddress type: object properties: gpsLocation: type: string streetAddress: type: string city: type: string suburb: type: string idNumber: type: string gender: type: string documents: type: array items: type: object dateOfBirth: type: string regionId: type: string nonCitizen: type: boolean otherNames: type: string otherSourceOfFunds: type: string sourceOfFundsId: type: string nextOfKinPhoneNumber: type: string nationality: type: string surname: type: string nextOfKinName: type: string phoneNumber: type: string countryId: type: string email: type: string alternativePhoneNumber: type: string businessInfo: title: BusinessInfo type: object properties: businessSuburb: type: string businessName: type: string businessTradeName: type: string businessStreetAddress: type: string documents: type: array items: type: object businessCity: type: string businessGpsLocation: type: string businessCertificateNumber: type: string existingMomoAccounts: type: string businessEmail: type: string otherBusinessTypeName: type: string businessTypeId: type: string businessTaxNumber: type: string termsConditionsInfo: title: TermsConditionsInfo type: object properties: termsConditionsAgreed: type: boolean convictionQuestions: type: array items: title: ConvictionQuestionsItem type: object properties: answer: title: YesNoChoice type: object properties: value: type: string attachment: type: string additionalInfo: type: string questionId: type: integer format: int32 authenticationQuestions: type: array items: title: AuthenticationQuestionsItem type: object properties: answer: type: string questionId: type: integer format: int32 required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: SimRequestResponse type: object properties: statusCode: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string statusMessage: type: string supportMessage: type: string transactionId: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/simSwap: put: tags: - CustomerSimManagement summary: Initiate the SIM swap process description: "Initiate the SIM swap process for a subscriber and perform strict\ \ validation of inputs, generating standardized questions and answers where\ \ required. The flow normalizes backend responses, enforces policy, and returns\ \ traceable results suitable for audits and retry-safe operations." operationId: CustomerSimService_put_customerSimSwap_customerscustomerIds parameters: - name: channelId in: header required: false schema: type: string - name: customerId in: path required: true schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: query required: false schema: type: string - name: x-country-code in: header required: true schema: type: string - name: x-origin-channelid in: header required: false schema: type: string requestBody: content: application/json: schema: title: MadapiSimSwapRequest type: object properties: comments: type: string initiatedBy: type: string newSerialNumber: type: string nodeId: type: string oldSimNumber: type: string newMsisdn: type: string newSimNumber: type: string reasonCode: type: string effectiveFrom: type: string relatedParty: title: RelatedParty type: object properties: id: type: string name: type: string role: type: string geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string '@referredType': type: string lastRechargeDate: type: string format: date-time lastRechargeAmount: type: number format: double simActivationDate: type: string format: date-time frequentlyDialedNumber: type: array items: type: string timestamp: type: string mostRecentDeviceName: type: string momoActivated: type: boolean recentMomoTransactionAmounts: type: array items: type: number format: double momoLastTransactionType: type: string recentBundlePurchaseAmounts: type: array items: type: number format: double simUnavailable: type: boolean alternativeMsisdn: type: string dateOfBirth: type: string idNumber: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simswap_SimSwapResponse' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/simSwap/registration: post: tags: - CustomerSimManagement summary: Provides information about the SIM swap request. description: "Initiates and validates SIM swap intent by mapping NIN and related\ \ identity factors to backend rules. The flow enforces eligibility checks,\ \ generates audit trails, and normalizes backend responses to standard codes\ \ to ensure secure, traceable number re-assignment." operationId: CustomerSimService_post_customerSimSwap_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: isNINExempted in: query required: false schema: type: boolean - name: operation in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-country-code in: header required: true schema: type: string requestBody: content: application/json: schema: title: NINSwapRequest type: object properties: requestType: title: RequestType type: object properties: value: type: string requestSubType: title: SubType type: object properties: value: type: string customertype: title: CustomerType type: object properties: value: type: string resourceType: title: ResourceType type: object properties: value: type: string transactionId: type: string offlineVerification: type: boolean biometricUpdateType: type: string consentType: type: string businessType: title: BusinessType type: object properties: value: type: string customerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string nimcTransactionId: type: string customFields: title: CustomFields type: object properties: vnin: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string additionalDetails: title: AdditionalDetails type: object properties: upgradeRequired: type: string upgradeReason: type: string simNetworkType: type: string referenceNumber: type: string imsiNumber: type: string pukNumber: type: string effectiveType: type: string effectiveDate: type: string exemptions: type: array items: title: Exemption type: object properties: type: type: string reason: type: string eValidator: title: EValidator type: object properties: answers: title: Answers type: object properties: dateOfBirth: type: string motherMaidenName: type: string frequentlyDialledNumbers: type: array items: type: string registrationYear: type: string lastRechargedDate: type: string lastRechargedAmount: type: string stateOfOrigin: type: string lgaOfOrigin: type: string document: type: array items: title: Document type: object properties: id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string channel: title: Channel type: object properties: id: type: string verificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string individualId: type: string title: type: string firstName: type: string middleName: type: string lastName: type: string fullname: type: string maritalStatus: type: string gender: type: string dateOfBirth: type: string nationality: type: string residentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string motherName: type: string religion: type: string lga: type: string postalAddress: title: PostalAddress type: object properties: countryState: type: string occupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string languagePref: type: string isForeigner: type: string foreignerType: type: string visitor: type: string emailAddress: type: string phoneNumber: type: string socialMediaDetail: type: array items: title: SocialMediaDetail type: object properties: name: type: string link: type: string registrationDate: type: string sim: title: Sim type: object properties: id: type: string reservationID: type: string number: type: string msisdn: title: Msisdn type: object properties: value: type: string targetSystem: type: string NINExemption: type: boolean required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: SimSwapResponse type: object properties: supportMessage: type: string timestamp: type: string responseCode: type: string responseDescription: type: string responseMessage: type: string success: type: boolean statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/simSwap/status: get: tags: - CustomerSimManagement summary: Gets the status of the SIM Swap activity description: "Retrieve the latest status of a SIM swap transaction for a subscriber,\ \ including progress updates and canonical status codes. The endpoint is optimized\ \ for observability and supports reliable polling without compromising backend\ \ performance." operationId: CustomerSimService_get_simSwapStatus_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: operator in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: SimSwapStatusResponse type: object properties: statusCode: type: string data: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /ping/simSwap: get: tags: - CustomerSimManagement summary: Ping the SIM Swap activity backend description: "Perform a lightweight health probe of the SIM swap processing\ \ backend to verify availability and responsiveness. Intended for monitoring\ \ and readiness checks, returning normalized results for dashboards and automation." operationId: CustomerSimService_get_pingSimSwapStatus_pingsimSwap responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: PingSimSwapResponse type: object properties: responseCode: type: string responseDescription: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /reset/simSwap: get: tags: - CustomerSimManagement summary: Reset the SIM Swap activity backend description: Reset or clear internal caches and state related to SIM swap processing to recover from transient failures. This operation is privileged and returns structured outcomes to support safe operational recovery procedures. operationId: CustomerSimService_get_resetSimSwapStatus_resetsimSwap parameters: - name: username in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer sim management flows. content: application/json: schema: title: ResetSimSwapResponse type: object properties: responseCode: type: string responseDescription: type: string otherInfo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false components: schemas: com_mtn_aggregator_models_response_simValidationDetailsResponse_SimValidationDetailResponseData: title: SimValidationDetailResponseData type: object properties: data: title: Data type: object properties: requestType: type: string requestSubtype: type: string customertype: type: string resourceType: type: string offlineVerification: type: string biometricUpdateType: type: string consentType: type: string businessType: type: string customerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string Type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string identification: title: Identification type: object properties: customFields: title: CustomFields type: object properties: vnin: type: string agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string document: type: array items: title: Document type: object properties: href: type: string id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string channel: title: Channel type: object properties: id: type: string verificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegFingerPrint: title: SimRegFingerPrint type: object properties: value: type: string byPass: type: string reason: type: string note: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string SimRegFace: title: SimRegFace type: object properties: value: type: string byPass: type: string reason: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string nimcSimRegImg: title: NimcSimRegImg type: object properties: value: type: string byPass: type: string reason: type: string nimcFace: title: NimcFace type: object properties: value: type: string byPass: type: string reason: type: string eyeballing: title: Eyeballing type: object properties: userName: type: string action: type: string lockedTill: type: string actionSubType: type: string remarks: type: string title: type: string firstName: type: string middleName: type: string lastName: type: string fullname: type: string maritalStatus: type: string gender: type: string dateOfBirth: type: string nationality: type: string residentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string motherName: type: string religion: type: string stateOfOrign: type: string lga: type: string occupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string languagePref: type: string isForeigner: type: string foreignerType: type: string visitor: type: string emailAddress: type: string phoneNumber: type: string socialMediaDetail: type: array items: title: SocialMediaDetail type: object properties: name: type: string link: type: string sim: title: Sim type: object properties: id: type: string reservationID: type: string Number: type: string msisdn: title: Msisdn type: object properties: id: type: string reservationId: type: string value: type: string momo: title: Momo type: object properties: enable: type: string type: type: string orderDetails: title: OrderDetails type: object properties: id: type: string itemId: type: string maxNDataList: type: array items: title: MaxNDatum type: object properties: status: type: string publicIdentifier: type: string id: type: string customerID: type: string role: type: string imsiNumber: type: string productDetails: type: array items: title: ProductDetail type: object properties: status: type: string publicIdentifier: type: string id: type: array items: type: string customerID: type: string role: type: string productIds: type: array items: type: string privateIdentifier: type: string simInformation: title: SimInformation type: object properties: value: type: string lastModifiedDate: type: string resourceCharacteristics: title: ResourceCharacteristic type: object properties: code: type: string status: type: string message: type: string data: type: array items: title: ResourceDatum type: object properties: code: type: string name: type: string value: type: string valueType: type: string publicIdentifier: type: string name: type: string value: type: string valueType: type: string pin1: type: string pin2: type: string puk1: type: string puk2: type: string imsiNumber: type: string kinNumberData: type: string cardProfile: type: string kindValue: type: string code: type: string name: type: string value: type: string valueType: type: string transactionId: type: string customerId: type: string registrationDate: type: string orderDetails: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_OrderDetails' createdDate: type: string statusCode: type: string substatus: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_ResidentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string com_mtn_aggregator_models_request_simrequest_TermsConditionsInfo: title: TermsConditionsInfo type: object properties: termsConditionsAgreed: type: boolean convictionQuestions: type: array items: title: ConvictionQuestionsItem type: object properties: answer: title: YesNoChoice type: object properties: value: type: string attachment: type: string additionalInfo: type: string questionId: type: integer format: int32 com_mtn_aggregator_models_response_customersim_CustomerSimResponse: title: CustomerSimResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string data: type: array items: title: CustomerSimResponseData type: object properties: id: type: string name: type: string status: type: string com_mtn_aggregator_models_request_simupgrade_IdType: title: IdType type: object properties: masterCode: type: string com_mtn_aggregator_models_request_simupgrade_Upfront: title: Upfront type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Identification: title: Identification type: object properties: customFields: title: CustomFields type: object properties: vnin: type: string com_mtn_aggregator_models_request_esim_HandleDownloadInfo: title: HandleDownloadInfo type: object properties: profileType: type: string iccid: type: string eid: type: string timestamp: type: string imei: type: string tac: type: string notificationPointId: type: string data: title: HandleDownloadInfoData type: object properties: statusMessage: type: string message: type: string callbackUrl: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_NimcSimRegImg: title: NimcSimRegImg type: object properties: value: type: string byPass: type: string reason: type: string com_mtn_aggregator_models_request_simupgrade_PaymentDate: title: PaymentDate type: object properties: dollardate: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_VerificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegFingerPrint: title: SimRegFingerPrint type: object properties: value: type: string byPass: type: string reason: type: string note: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string SimRegFace: title: SimRegFace type: object properties: value: type: string byPass: type: string reason: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string nimcSimRegImg: title: NimcSimRegImg type: object properties: value: type: string byPass: type: string reason: type: string nimcFace: title: NimcFace type: object properties: value: type: string byPass: type: string reason: type: string eyeballing: title: Eyeballing type: object properties: userName: type: string action: type: string lockedTill: type: string actionSubType: type: string remarks: type: string com_mtn_aggregator_models_response_eva_PhoneNumberRecycleStatusResponse: title: PhoneNumberRecycleStatusResponse type: object properties: numberRecycleStatus: type: boolean recycleDate: type: string com_mtn_aggregator_models_request_simreg_SimDetails: title: SimDetails type: object properties: value: type: string com_mtn_aggregator_models_request_simupgrade_Charges: title: Charges type: object properties: upfront: title: Upfront type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string billing: title: Billing type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_SimRegFingerPrint: title: SimRegFingerPrint type: object properties: value: type: string byPass: type: string reason: type: string note: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_response_APIResponse: title: APIResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string com_mtn_aggregator_enums_BusinessType: title: BusinessType type: object properties: value: type: string com_mtn_aggregator_models_request_simreg_MaxNReach: title: MaxNReach type: object properties: simDetails: title: SimDetails type: object properties: value: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequestType: title: ServiceRequestType type: object properties: masterCode: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Document: title: Document type: object properties: href: type: string id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string com_mtn_aggregator_enums_ResourceType: title: ResourceType type: object properties: value: type: string com_mtn_aggregator_models_request_ninsimswap_Agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_SimInformation: title: SimInformation type: object properties: value: type: string com_mtn_aggregator_models_request_ninsimswap_AdditionalDetails: title: AdditionalDetails type: object properties: upgradeRequired: type: string upgradeReason: type: string simNetworkType: type: string referenceNumber: type: string imsiNumber: type: string pukNumber: type: string effectiveType: type: string effectiveDate: type: string exemptions: type: array items: title: Exemption type: object properties: type: type: string reason: type: string com_mtn_aggregator_models_request_simswap_GeographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_request_simupgrade_SimDetails: title: SimDetails type: object properties: data: type: array items: title: SimDetailsData type: object properties: user: type: string docTitle: type: string docType: type: string docAuthor: type: string securityGroup: type: string directReleaseNewCheckInDoc: type: string docAccount: type: string base64: type: string recordStatus: type: string customerId: type: string customerPhotoType: type: string biometricType: type: string submissionDate: type: string channel: type: string documentName: type: string channelRefId: type: string customerMsisdn: type: string updateDate: type: string fingerprintNumber: type: string customerMsisdnAdditional: type: string doFileCopy: type: string parentGuid: type: string application: type: string primaryFileName: type: string primaryFilePath: type: string content: type: string newSIMSwapData: type: array items: title: NewSIMSwapData type: object properties: serviceRequests: title: ServiceRequest type: object properties: salesDetails: title: SalesDetails type: object properties: location: type: string salesChannel: title: SalesChannel type: object properties: masterCode: type: string upgrade: type: string isOtpValidaate: type: string selectedActionType: type: string serviceRequestContactType: title: ServiceRequestContactType type: object properties: masterCode: type: string instantSimSwap: type: string serviceRequestComments: type: string userDetails: title: UserDetails type: object properties: userName: type: string loginName: type: string customerInfo: title: CustomerInfo type: object properties: serviceNumber: type: string customerCode: type: string serviceCode: type: string accountCode: type: string noSwapByPass: type: string swapReferenceNumber: type: string agentMSISDN: type: string agentName: type: string agentEmailID: type: string requestor: title: Requestor type: object properties: requestorName: type: string requestorCode: title: RequestorCode type: object properties: masterCode: type: string identificationDetail: type: array items: title: IdentificationDetail type: object properties: name: type: string idType: title: IdType type: object properties: masterCode: type: string documentPurpose: title: DocumentPurpose type: object properties: masterCode: type: string uploadChannel: title: UploadChannel type: object properties: masterCode: type: string idNumber: type: string type: type: string uploadedDocument: type: array items: title: UploadedDocument type: object properties: idType: type: string documentPurpose: type: string channelRefID: type: string documentName: type: string documentRequired: type: string submissionDate: type: string uploadedFileName: type: string offlineUploadMode: type: string uploadDocumentEnableFlag: type: string proxySwap: type: string isSubmitAPIFlag: type: string newSimDetails: title: NewSimDetails type: object properties: simType: title: SimType type: object properties: masterCode: type: string imsiNumber: type: string pukNumber: type: string simCategory: title: SimCategory type: object properties: masterCode: type: string simNumber: type: string serviceRequestType: title: ServiceRequestType type: object properties: masterCode: type: string serviceRequestSubType: title: ServiceRequestSubType type: object properties: masterCode: type: string validationRequired: type: string effectiveType: type: string requestLevel: type: string charges: title: Charges type: object properties: upfront: title: Upfront type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string billing: title: Billing type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string serviceRequestCreationDate: title: ServiceRequestCreationDate type: object properties: dollardate: type: string serviceRequestProcessingDate: title: ServiceRequestProcessingDate type: object properties: dollardate: type: string effectiveDate: type: string serviceRequestReason: title: ServiceRequestReason type: object properties: masterCode: type: string evalidatorData: title: EvalidatorData type: object properties: validatedResponse: title: ValidatedResponse type: object properties: requiredScore: type: string actualScore: type: string response: type: array items: title: ResponseList type: object properties: responseType: type: string evalidatorTypes: title: EvalidatorTypes type: object properties: evalidatorType: type: string simChangeSelectionType: type: string selctedFormData: type: string eValidatorFinalSubmitData: type: array items: title: EValidatorFinalSubmitData type: object properties: question: type: string providedData: type: string result: type: string paymentDetails: title: PaymentDetails type: object properties: paymentDate: title: PaymentDate type: object properties: dollardate: type: string paymentType: type: string amount: title: Amount type: object properties: value: type: number format: double unit: type: string ninIncluded: type: string ninDetails: title: NinDetails type: object properties: agentId: type: string agentMsisdn: type: string ninId: type: string ninStatus: type: string emailId: type: string pinRef: type: string referenceNumber: type: string documentChannel: type: string idType: type: string documentId: type: string verificationType: type: string customerSimRegRequest: type: string simRegImgMatchParent: type: string nimcImgMatchPercent: type: string nimcOfflineFlag: type: string consentType: type: string fingerprintPosition: type: string referralCode: type: string requestType: type: string vNIN: type: string userId: type: string firstName: type: string lastName: type: string dateOfBirth: type: string firstNameMatch: type: string lastNameMatch: type: string dateOfBirthMatch: type: string nimcSimRegFMPercent: type: string sequenceNumber: type: string nimcData: title: NimcData type: object properties: birthCountry: type: string birthDate: type: string birthLga: type: string birthState: type: string centralId: type: string educationalLevel: type: string email: type: string employmentStatus: type: string firstName: type: string gender: type: string heigth: type: string maritalStatus: type: string middleName: type: string nin: type: string nokAddress1: type: string nokAddress2: type: string nokFirstname: type: string nokLga: type: string nokMiddlename: type: string nokState: type: string nokSurname: type: string nokTown: type: string nativeLanguage: type: string otherLanguage: type: string otherName: type: string previousFirstName: type: string previousMiddleName: type: string profession: type: string previousLastName: type: string religion: type: string residenceAddressLine1: type: string residenceTown: type: string residenceLga: type: string residenceState: type: string residenceStatus: type: string selfOriginLga: type: string selfOriginPlace: type: string selfOriginState: type: string surname: type: string telephoneNo: type: string title: type: string cardStatus: type: string documentNumber: type: string trackingId: type: string relatedParty: type: array items: title: RelatedParty type: object properties: id: type: string value: type: string com_mtn_aggregator_models_request_simupgrade_IdentificationDetail: title: IdentificationDetail type: object properties: name: type: string idType: title: IdType type: object properties: masterCode: type: string documentPurpose: title: DocumentPurpose type: object properties: masterCode: type: string uploadChannel: title: UploadChannel type: object properties: masterCode: type: string idNumber: type: string type: type: string com_mtn_aggregator_models_request_simupgrade_EValidatorFinalSubmitData: title: EValidatorFinalSubmitData type: object properties: question: type: string providedData: type: string result: type: string com_mtn_aggregator_enums_momoonboarding_YesNoChoice: title: YesNoChoice type: object properties: value: type: string com_mtn_aggregator_models_response_esim_profile_BaseProfileResponse: title: BaseProfileResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequestSubType: title: ServiceRequestSubType type: object properties: masterCode: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_DealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' com_mtn_aggregator_models_reserve_ReserveResourceData: title: ReserveResourceData type: object properties: numberOfRec: type: integer format: int32 resources: type: array items: title: Resource type: object properties: id: type: string resourceType: $ref: '#/components/schemas/com_mtn_aggregator_enums_ResourceType' value: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_SimRegFace: title: SimRegFace type: object properties: value: type: string byPass: type: string reason: type: string com_mtn_aggregator_enums_ProfileStatus: title: ProfileStatus type: object properties: value: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_NimcFace: title: NimcFace type: object properties: value: type: string byPass: type: string reason: type: string com_mtn_aggregator_models_request_simrequest_MomoOnboardingSimRequest: title: MomoOnboardingSimRequest type: object properties: requestTimestamp: type: string requestId: type: string simRequestTypeId: type: string customerData: title: CustomerData type: object properties: personalInfo: title: PersonalInfo type: object properties: residentialAddress: title: ResidentialAddress type: object properties: gpsLocation: type: string streetAddress: type: string city: type: string suburb: type: string idNumber: type: string gender: type: string documents: type: array items: type: object dateOfBirth: type: string regionId: type: string nonCitizen: type: boolean otherNames: type: string otherSourceOfFunds: type: string sourceOfFundsId: type: string nextOfKinPhoneNumber: type: string nationality: type: string surname: type: string nextOfKinName: type: string phoneNumber: type: string countryId: type: string email: type: string alternativePhoneNumber: type: string businessInfo: title: BusinessInfo type: object properties: businessSuburb: type: string businessName: type: string businessTradeName: type: string businessStreetAddress: type: string documents: type: array items: type: object businessCity: type: string businessGpsLocation: type: string businessCertificateNumber: type: string existingMomoAccounts: type: string businessEmail: type: string otherBusinessTypeName: type: string businessTypeId: type: string businessTaxNumber: type: string termsConditionsInfo: title: TermsConditionsInfo type: object properties: termsConditionsAgreed: type: boolean convictionQuestions: type: array items: title: ConvictionQuestionsItem type: object properties: answer: title: YesNoChoice type: object properties: value: type: string attachment: type: string additionalInfo: type: string questionId: type: integer format: int32 authenticationQuestions: type: array items: title: AuthenticationQuestionsItem type: object properties: answer: type: string questionId: type: integer format: int32 com_mtn_aggregator_enums_RequestType: title: RequestType type: object properties: value: type: string com_mtn_aggregator_models_response_esim_ProfileAPIResponse: title: ProfileAPIResponse type: object properties: statusMessage: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string statusCode: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string transactionId: type: string sequenceNo: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Sim: title: Sim type: object properties: id: type: string reservationID: type: string Number: type: string com_mtn_aggregator_models_request_simrequest_ConvictionQuestionsItem: title: ConvictionQuestionsItem type: object properties: answer: title: YesNoChoice type: object properties: value: type: string attachment: type: string additionalInfo: type: string questionId: type: integer format: int32 com_mtn_aggregator_models_request_simrequest_BusinessInfo: title: BusinessInfo type: object properties: businessSuburb: type: string businessName: type: string businessTradeName: type: string businessStreetAddress: type: string documents: type: array items: type: object businessCity: type: string businessGpsLocation: type: string businessCertificateNumber: type: string existingMomoAccounts: type: string businessEmail: type: string otherBusinessTypeName: type: string businessTypeId: type: string businessTaxNumber: type: string com_mtn_aggregator_models_request_ninsimswap_Sim: title: Sim type: object properties: id: type: string reservationID: type: string number: type: string com_mtn_aggregator_models_request_simupgrade_PaymentDetails: title: PaymentDetails type: object properties: paymentDate: title: PaymentDate type: object properties: dollardate: type: string paymentType: type: string amount: title: Amount type: object properties: value: type: number format: double unit: type: string com_mtn_aggregator_models_response_maxnreach_CustomerData: title: CustomerData type: object properties: customerIdentification: title: CustomerIdentification type: object properties: status: type: string publicIdentifier: type: string idNumber: type: string customerID: type: string role: type: string com_mtn_aggregator_models_response_eva_PhoneNumberActivityResponse: title: PhoneNumberActivityResponse type: object properties: firstActivationDate: type: string lastActivityDate: type: string com_mtn_aggregator_enums_CustomerType: title: CustomerType type: object properties: value: type: string com_mtn_aggregator_models_response_eva_CustomerDataResponse_Calls: title: Calls type: object properties: callsReceivedVolume: type: integer format: int32 callsMadeVolume: type: integer format: int32 voiceMonthDuration: type: integer format: int32 com_mtn_aggregator_enums_SubType: title: SubType type: object properties: value: type: string com_mtn_aggregator_models_request_simrequest_PersonalInfo: title: PersonalInfo type: object properties: residentialAddress: title: ResidentialAddress type: object properties: gpsLocation: type: string streetAddress: type: string city: type: string suburb: type: string idNumber: type: string gender: type: string documents: type: array items: type: object dateOfBirth: type: string regionId: type: string nonCitizen: type: boolean otherNames: type: string otherSourceOfFunds: type: string sourceOfFundsId: type: string nextOfKinPhoneNumber: type: string nationality: type: string surname: type: string nextOfKinName: type: string phoneNumber: type: string countryId: type: string email: type: string alternativePhoneNumber: type: string com_mtn_aggregator_models_response_eva_CustomerDataResponse: title: CustomerDataResponse type: object properties: momo: title: Momo type: object properties: momoCashoutWithdrawalValue: type: number format: double momoPaymentOutTransaction: type: integer format: int32 dailyMeanMomoWalletBalance: type: number format: double dailyMedianMomoWalletBalance: type: number format: double daysUnderGhc10MomoWalletBalance: type: integer format: int32 maximumMomoWalletBalance: type: number format: double momoPaymentInTransaction: type: integer format: int32 standardDeviationMomoWalletBalance: type: number format: double daysOverGhc100MomoWalletBalance: type: integer format: int32 momoCashoutWithdrawalVolume: type: integer format: int32 daysOverGhc10MomoWalletBalance: type: integer format: int32 daysOverGhc1000MomoWalletBalance: type: integer format: int32 zeroMomoWalletBalance: type: integer format: int32 minimumMomoWalletBalance: type: number format: double daysOverGhc500MomoWalletBalance: type: integer format: int32 data: title: DataUsage type: object properties: dataUsageMb: type: number format: double stddevDataBalance: type: number format: double dataTopUp: type: integer format: int32 dailyMeanDataBalance: type: number format: double zeroDataBalance: type: integer format: int32 minimumDataBalance: type: number format: double daysOver1000mbDataBalance: type: integer format: int32 daysOver10mbDataBalance: type: integer format: int32 daysOver100mbDataBalance: type: integer format: int32 maximumDataBalance: type: number format: double daysUnder10mbDataBalance: type: integer format: int32 daysOver500mbDataBalance: type: integer format: int32 airtime: title: Airtime type: object properties: daysOverGhc10AirtimeBalance: type: integer format: int32 airtimeTopUpHistory: type: number format: double daysOverGhc500AirtimeBalance: type: integer format: int32 daysOverGhc1000AirtimeBalance: type: integer format: int32 daysOverGhc100AirtimeBalance: type: integer format: int32 dailyMeanAirtimeBalance: type: number format: double airtimeUsageGhc: type: number format: double minimumAirtimeBalance: type: number format: double maximumAirtimeBalance: type: number format: double zeroAirtimeBalance: type: integer format: int32 daysUnderGhc10AirtimeBalance: type: integer format: int32 standardDeviationAirtimeBalance: type: number format: double calls: title: Calls type: object properties: callsReceivedVolume: type: integer format: int32 callsMadeVolume: type: integer format: int32 voiceMonthDuration: type: integer format: int32 device: title: Device type: object properties: deviceModel: type: string deviceManufactuerer: type: string durationWithDevice: type: integer format: int32 deviceType: type: string subscriptionDetails: type: string smsVolumeSent: type: integer format: int32 tenure: type: integer format: int32 com_mtn_aggregator_models_response_simValidationDetailsResponse_Msisdn: title: Msisdn type: object properties: id: type: string reservationId: type: string value: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequest: title: ServiceRequest type: object properties: salesDetails: title: SalesDetails type: object properties: location: type: string salesChannel: title: SalesChannel type: object properties: masterCode: type: string upgrade: type: string isOtpValidaate: type: string selectedActionType: type: string serviceRequestContactType: title: ServiceRequestContactType type: object properties: masterCode: type: string instantSimSwap: type: string serviceRequestComments: type: string userDetails: title: UserDetails type: object properties: userName: type: string loginName: type: string customerInfo: title: CustomerInfo type: object properties: serviceNumber: type: string customerCode: type: string serviceCode: type: string accountCode: type: string noSwapByPass: type: string swapReferenceNumber: type: string agentMSISDN: type: string agentName: type: string agentEmailID: type: string requestor: title: Requestor type: object properties: requestorName: type: string requestorCode: title: RequestorCode type: object properties: masterCode: type: string identificationDetail: type: array items: title: IdentificationDetail type: object properties: name: type: string idType: title: IdType type: object properties: masterCode: type: string documentPurpose: title: DocumentPurpose type: object properties: masterCode: type: string uploadChannel: title: UploadChannel type: object properties: masterCode: type: string idNumber: type: string type: type: string uploadedDocument: type: array items: title: UploadedDocument type: object properties: idType: type: string documentPurpose: type: string channelRefID: type: string documentName: type: string documentRequired: type: string submissionDate: type: string uploadedFileName: type: string offlineUploadMode: type: string uploadDocumentEnableFlag: type: string proxySwap: type: string isSubmitAPIFlag: type: string newSimDetails: title: NewSimDetails type: object properties: simType: title: SimType type: object properties: masterCode: type: string imsiNumber: type: string pukNumber: type: string simCategory: title: SimCategory type: object properties: masterCode: type: string simNumber: type: string serviceRequestType: title: ServiceRequestType type: object properties: masterCode: type: string serviceRequestSubType: title: ServiceRequestSubType type: object properties: masterCode: type: string validationRequired: type: string effectiveType: type: string requestLevel: type: string charges: title: Charges type: object properties: upfront: title: Upfront type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string billing: title: Billing type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string serviceRequestCreationDate: title: ServiceRequestCreationDate type: object properties: dollardate: type: string serviceRequestProcessingDate: title: ServiceRequestProcessingDate type: object properties: dollardate: type: string effectiveDate: type: string serviceRequestReason: title: ServiceRequestReason type: object properties: masterCode: type: string evalidatorData: title: EvalidatorData type: object properties: validatedResponse: title: ValidatedResponse type: object properties: requiredScore: type: string actualScore: type: string response: type: array items: title: ResponseList type: object properties: responseType: type: string evalidatorTypes: title: EvalidatorTypes type: object properties: evalidatorType: type: string simChangeSelectionType: type: string selctedFormData: type: string eValidatorFinalSubmitData: type: array items: title: EValidatorFinalSubmitData type: object properties: question: type: string providedData: type: string result: type: string paymentDetails: title: PaymentDetails type: object properties: paymentDate: title: PaymentDate type: object properties: dollardate: type: string paymentType: type: string amount: title: Amount type: object properties: value: type: number format: double unit: type: string ninIncluded: type: string ninDetails: title: NinDetails type: object properties: agentId: type: string agentMsisdn: type: string ninId: type: string ninStatus: type: string emailId: type: string pinRef: type: string referenceNumber: type: string documentChannel: type: string idType: type: string documentId: type: string verificationType: type: string customerSimRegRequest: type: string simRegImgMatchParent: type: string nimcImgMatchPercent: type: string nimcOfflineFlag: type: string consentType: type: string fingerprintPosition: type: string referralCode: type: string requestType: type: string vNIN: type: string userId: type: string firstName: type: string lastName: type: string dateOfBirth: type: string firstNameMatch: type: string lastNameMatch: type: string dateOfBirthMatch: type: string nimcSimRegFMPercent: type: string sequenceNumber: type: string nimcData: title: NimcData type: object properties: birthCountry: type: string birthDate: type: string birthLga: type: string birthState: type: string centralId: type: string educationalLevel: type: string email: type: string employmentStatus: type: string firstName: type: string gender: type: string heigth: type: string maritalStatus: type: string middleName: type: string nin: type: string nokAddress1: type: string nokAddress2: type: string nokFirstname: type: string nokLga: type: string nokMiddlename: type: string nokState: type: string nokSurname: type: string nokTown: type: string nativeLanguage: type: string otherLanguage: type: string otherName: type: string previousFirstName: type: string previousMiddleName: type: string profession: type: string previousLastName: type: string religion: type: string residenceAddressLine1: type: string residenceTown: type: string residenceLga: type: string residenceState: type: string residenceStatus: type: string selfOriginLga: type: string selfOriginPlace: type: string selfOriginState: type: string surname: type: string telephoneNo: type: string title: type: string cardStatus: type: string documentNumber: type: string trackingId: type: string com_mtn_aggregator_models_response_simswap_SimSwapStatusResponse: title: SimSwapStatusResponse type: object properties: statusCode: type: string data: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' com_mtn_aggregator_models_response_simValidationDetailsResponse_Momo: title: Momo type: object properties: enable: type: string type: type: string com_mtn_aggregator_models_request_ninsimswap_Answers: title: Answers type: object properties: dateOfBirth: type: string motherMaidenName: type: string frequentlyDialledNumbers: type: array items: type: string registrationYear: type: string lastRechargedDate: type: string lastRechargedAmount: type: string stateOfOrigin: type: string lgaOfOrigin: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_NimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Eyeballing: title: Eyeballing type: object properties: userName: type: string action: type: string lockedTill: type: string actionSubType: type: string remarks: type: string com_mtn_aggregator_models_request_ninsimswap_VerificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string com_mtn_aggregator_models_request_simupgrade_NinDetails: title: NinDetails type: object properties: agentId: type: string agentMsisdn: type: string ninId: type: string ninStatus: type: string emailId: type: string pinRef: type: string referenceNumber: type: string documentChannel: type: string idType: type: string documentId: type: string verificationType: type: string customerSimRegRequest: type: string simRegImgMatchParent: type: string nimcImgMatchPercent: type: string nimcOfflineFlag: type: string consentType: type: string fingerprintPosition: type: string referralCode: type: string requestType: type: string vNIN: type: string userId: type: string firstName: type: string lastName: type: string dateOfBirth: type: string firstNameMatch: type: string lastNameMatch: type: string dateOfBirthMatch: type: string nimcSimRegFMPercent: type: string sequenceNumber: type: string nimcData: title: NimcData type: object properties: birthCountry: type: string birthDate: type: string birthLga: type: string birthState: type: string centralId: type: string educationalLevel: type: string email: type: string employmentStatus: type: string firstName: type: string gender: type: string heigth: type: string maritalStatus: type: string middleName: type: string nin: type: string nokAddress1: type: string nokAddress2: type: string nokFirstname: type: string nokLga: type: string nokMiddlename: type: string nokState: type: string nokSurname: type: string nokTown: type: string nativeLanguage: type: string otherLanguage: type: string otherName: type: string previousFirstName: type: string previousMiddleName: type: string profession: type: string previousLastName: type: string religion: type: string residenceAddressLine1: type: string residenceTown: type: string residenceLga: type: string residenceState: type: string residenceStatus: type: string selfOriginLga: type: string selfOriginPlace: type: string selfOriginState: type: string surname: type: string telephoneNo: type: string title: type: string cardStatus: type: string documentNumber: type: string trackingId: type: string com_mtn_aggregator_models_request_simupgrade_EvalidatorData: title: EvalidatorData type: object properties: validatedResponse: title: ValidatedResponse type: object properties: requiredScore: type: string actualScore: type: string response: type: array items: title: ResponseList type: object properties: responseType: type: string evalidatorTypes: title: EvalidatorTypes type: object properties: evalidatorType: type: string simChangeSelectionType: type: string selctedFormData: type: string eValidatorFinalSubmitData: type: array items: title: EValidatorFinalSubmitData type: object properties: question: type: string providedData: type: string result: type: string com_mtn_aggregator_models_response_eva_CustomerDataResponse_DataUsage: title: DataUsage type: object properties: dataUsageMb: type: number format: double stddevDataBalance: type: number format: double dataTopUp: type: integer format: int32 dailyMeanDataBalance: type: number format: double zeroDataBalance: type: integer format: int32 minimumDataBalance: type: number format: double daysOver1000mbDataBalance: type: integer format: int32 daysOver10mbDataBalance: type: integer format: int32 daysOver100mbDataBalance: type: integer format: int32 maximumDataBalance: type: number format: double daysUnder10mbDataBalance: type: integer format: int32 daysOver500mbDataBalance: type: integer format: int32 com_mtn_aggregator_models_response_customersim_CustomerSimResponseData: title: CustomerSimResponseData type: object properties: id: type: string name: type: string status: type: string com_mtn_aggregator_models_request_ninsimswap_GeographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_request_ninsimswap_Channel: title: Channel type: object properties: id: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_SimRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string com_mtn_aggregator_models_response_esim_ConfirmResponse: title: ConfirmResponse type: object properties: matchingId: type: string smdpAddress: type: string eid: type: string message: type: string com_mtn_aggregator_models_reserve_Resource: title: Resource type: object properties: id: type: string resourceType: $ref: '#/components/schemas/com_mtn_aggregator_enums_ResourceType' value: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Data: title: Data type: object properties: requestType: type: string requestSubtype: type: string customertype: type: string resourceType: type: string offlineVerification: type: string biometricUpdateType: type: string consentType: type: string businessType: type: string customerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string Type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string identification: title: Identification type: object properties: customFields: title: CustomFields type: object properties: vnin: type: string agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string document: type: array items: title: Document type: object properties: href: type: string id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string channel: title: Channel type: object properties: id: type: string verificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegFingerPrint: title: SimRegFingerPrint type: object properties: value: type: string byPass: type: string reason: type: string note: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string SimRegFace: title: SimRegFace type: object properties: value: type: string byPass: type: string reason: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string nimcSimRegImg: title: NimcSimRegImg type: object properties: value: type: string byPass: type: string reason: type: string nimcFace: title: NimcFace type: object properties: value: type: string byPass: type: string reason: type: string eyeballing: title: Eyeballing type: object properties: userName: type: string action: type: string lockedTill: type: string actionSubType: type: string remarks: type: string title: type: string firstName: type: string middleName: type: string lastName: type: string fullname: type: string maritalStatus: type: string gender: type: string dateOfBirth: type: string nationality: type: string residentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string motherName: type: string religion: type: string stateOfOrign: type: string lga: type: string occupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string languagePref: type: string isForeigner: type: string foreignerType: type: string visitor: type: string emailAddress: type: string phoneNumber: type: string socialMediaDetail: type: array items: title: SocialMediaDetail type: object properties: name: type: string link: type: string sim: title: Sim type: object properties: id: type: string reservationID: type: string Number: type: string msisdn: title: Msisdn type: object properties: id: type: string reservationId: type: string value: type: string momo: title: Momo type: object properties: enable: type: string type: type: string orderDetails: title: OrderDetails type: object properties: id: type: string itemId: type: string maxNDataList: type: array items: title: MaxNDatum type: object properties: status: type: string publicIdentifier: type: string id: type: string customerID: type: string role: type: string imsiNumber: type: string productDetails: type: array items: title: ProductDetail type: object properties: status: type: string publicIdentifier: type: string id: type: array items: type: string customerID: type: string role: type: string productIds: type: array items: type: string privateIdentifier: type: string simInformation: title: SimInformation type: object properties: value: type: string lastModifiedDate: type: string resourceCharacteristics: title: ResourceCharacteristic type: object properties: code: type: string status: type: string message: type: string data: type: array items: title: ResourceDatum type: object properties: code: type: string name: type: string value: type: string valueType: type: string publicIdentifier: type: string name: type: string value: type: string valueType: type: string pin1: type: string pin2: type: string puk1: type: string puk2: type: string imsiNumber: type: string kinNumberData: type: string cardProfile: type: string kindValue: type: string code: type: string name: type: string value: type: string valueType: type: string com_mtn_aggregator_models_request_simswap_MadapiSimSwapRequest: title: MadapiSimSwapRequest type: object properties: comments: type: string initiatedBy: type: string newSerialNumber: type: string nodeId: type: string oldSimNumber: type: string newMsisdn: type: string newSimNumber: type: string reasonCode: type: string effectiveFrom: type: string relatedParty: title: RelatedParty type: object properties: id: type: string name: type: string role: type: string geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string '@referredType': type: string lastRechargeDate: type: string format: date-time lastRechargeAmount: type: number format: double simActivationDate: type: string format: date-time frequentlyDialedNumber: type: array items: type: string timestamp: type: string mostRecentDeviceName: type: string momoActivated: type: boolean recentMomoTransactionAmounts: type: array items: type: number format: double momoLastTransactionType: type: string recentBundlePurchaseAmounts: type: array items: type: number format: double simUnavailable: type: boolean alternativeMsisdn: type: string dateOfBirth: type: string idNumber: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_OrderDetails: title: OrderDetails type: object properties: id: type: string itemId: type: string com_mtn_aggregator_models_request_simupgrade_UserDetails: title: UserDetails type: object properties: userName: type: string loginName: type: string com_mtn_aggregator_models_request_ninsimswap_NimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string com_mtn_aggregator_models_request_esim_DownloadOrderRequest: title: DownloadOrderRequest type: object properties: profileType: type: string iccid: type: string eid: type: string com_mtn_aggregator_models_request_esim_ProfileInformationRequest: title: ProfileInformationRequest type: object properties: iccid: type: string includeMetadata: type: boolean com_mtn_aggregator_models_request_esim_HandleDownloadInfoData: title: HandleDownloadInfoData type: object properties: statusMessage: type: string message: type: string com_mtn_aggregator_models_request_simupgrade_SimCategory: title: SimCategory type: object properties: masterCode: type: string com_mtn_aggregator_models_request_ninsimswap_CustomFields: title: CustomFields type: object properties: vnin: type: string com_mtn_aggregator_models_request_ninsimswap_Exemption: title: Exemption type: object properties: type: type: string reason: type: string com_mtn_aggregator_models_request_ninsimswap_ResidentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequestContactType: title: ServiceRequestContactType type: object properties: masterCode: type: string com_mtn_aggregator_models_response_simswap_SimSwapResponse: title: SimSwapResponse type: object properties: supportMessage: type: string timestamp: type: string responseCode: type: string responseDescription: type: string responseMessage: type: string success: type: boolean statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string com_mtn_aggregator_models_response_SIMMaxNReachResponse: title: SIMMaxNReachResponse type: object properties: maxNReached: type: boolean count: type: integer format: int32 customerId: type: string ids: type: array items: type: string data: type: array items: title: CustomerData type: object properties: customerIdentification: title: CustomerIdentification type: object properties: status: type: string publicIdentifier: type: string idNumber: type: string customerID: type: string role: type: string statusCode: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' statusMessage: type: string supportMessage: type: string transactionId: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string com_mtn_aggregator_models_request_simupgrade_NimcData: title: NimcData type: object properties: birthCountry: type: string birthDate: type: string birthLga: type: string birthState: type: string centralId: type: string educationalLevel: type: string email: type: string employmentStatus: type: string firstName: type: string gender: type: string heigth: type: string maritalStatus: type: string middleName: type: string nin: type: string nokAddress1: type: string nokAddress2: type: string nokFirstname: type: string nokLga: type: string nokMiddlename: type: string nokState: type: string nokSurname: type: string nokTown: type: string nativeLanguage: type: string otherLanguage: type: string otherName: type: string previousFirstName: type: string previousMiddleName: type: string profession: type: string previousLastName: type: string religion: type: string residenceAddressLine1: type: string residenceTown: type: string residenceLga: type: string residenceState: type: string residenceStatus: type: string selfOriginLga: type: string selfOriginPlace: type: string selfOriginState: type: string surname: type: string telephoneNo: type: string title: type: string cardStatus: type: string documentNumber: type: string trackingId: type: string com_mtn_aggregator_models_starterpack_StarterPackRequest: title: StarterPackRequest type: object properties: imsi: type: string iccid: type: string ki: type: string simType: type: string productId: type: string msisdnId: type: string simId: type: string com_mtn_aggregator_models_request_simupgrade_CustomerInfo: title: CustomerInfo type: object properties: serviceNumber: type: string customerCode: type: string serviceCode: type: string accountCode: type: string com_mtn_aggregator_models_request_esim_ConfirmOrderRequest: title: ConfirmOrderRequest type: object properties: eid: type: string iccid: type: string releaseFlag: type: boolean matchingId: type: string confirmationCode: type: string smdsAddress: type: string overrideProfileMetadata: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_ResourceDatum: title: ResourceDatum type: object properties: code: type: string name: type: string value: type: string valueType: type: string publicIdentifier: type: string com_mtn_aggregator_models_request_simupgrade_RelatedParty: title: RelatedParty type: object properties: id: type: string value: type: string com_mtn_aggregator_models_response_PingSimSwapResponse: title: PingSimSwapResponse type: object properties: responseCode: type: string responseDescription: type: string APIError: title: APIError required: - statusCode - statusMessage type: object properties: statusCode: type: string description: Error status code statusMessage: type: string description: Human-readable error message supportMessage: type: string description: Technical support message or error code for troubleshooting transactionId: type: string description: Transaction identifier for tracking and correlation sequenceNo: type: string description: Sequence number for request tracking timestamp: type: string description: Error timestamp in ISO 8601 format format: date-time path: type: string description: API endpoint path where the error occurred method: type: string description: HTTP method of the request that caused the error downstreamStatusCode: type: string description: Downstream service error code if applicable description: Generic MADAPI error response structure com_mtn_aggregator_models_request_simupgrade_UploadedDocument: title: UploadedDocument type: object properties: idType: type: string documentPurpose: type: string channelRefID: type: string documentName: type: string documentRequired: type: string submissionDate: type: string uploadedFileName: type: string offlineUploadMode: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_AdditionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string com_mtn_aggregator_models_request_simupgrade_NewSimDetails: title: NewSimDetails type: object properties: simType: title: SimType type: object properties: masterCode: type: string imsiNumber: type: string pukNumber: type: string simCategory: title: SimCategory type: object properties: masterCode: type: string simNumber: type: string com_mtn_aggregator_models_request_simupgrade_Amount: title: Amount type: object properties: value: type: number format: double unit: type: string com_mtn_aggregator_models_request_ninsimswap_DealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' com_mtn_aggregator_models_request_simupgrade_DocumentPurpose: title: DocumentPurpose type: object properties: masterCode: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequestReason: title: ServiceRequestReason type: object properties: masterCode: type: string com_mtn_aggregator_models_request_ninsimswap_NINSwapRequest: title: NINSwapRequest type: object properties: requestType: title: RequestType type: object properties: value: type: string requestSubType: title: SubType type: object properties: value: type: string customertype: title: CustomerType type: object properties: value: type: string resourceType: title: ResourceType type: object properties: value: type: string transactionId: type: string offlineVerification: type: boolean biometricUpdateType: type: string consentType: type: string businessType: title: BusinessType type: object properties: value: type: string customerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string nimcTransactionId: type: string customFields: title: CustomFields type: object properties: vnin: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_request_ninsimswap_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string additionalDetails: title: AdditionalDetails type: object properties: upgradeRequired: type: string upgradeReason: type: string simNetworkType: type: string referenceNumber: type: string imsiNumber: type: string pukNumber: type: string effectiveType: type: string effectiveDate: type: string exemptions: type: array items: title: Exemption type: object properties: type: type: string reason: type: string eValidator: title: EValidator type: object properties: answers: title: Answers type: object properties: dateOfBirth: type: string motherMaidenName: type: string frequentlyDialledNumbers: type: array items: type: string registrationYear: type: string lastRechargedDate: type: string lastRechargedAmount: type: string stateOfOrigin: type: string lgaOfOrigin: type: string document: type: array items: title: Document type: object properties: id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string channel: title: Channel type: object properties: id: type: string verificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string individualId: type: string title: type: string firstName: type: string middleName: type: string lastName: type: string fullname: type: string maritalStatus: type: string gender: type: string dateOfBirth: type: string nationality: type: string residentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string motherName: type: string religion: type: string lga: type: string postalAddress: title: PostalAddress type: object properties: countryState: type: string occupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string languagePref: type: string isForeigner: type: string foreignerType: type: string visitor: type: string emailAddress: type: string phoneNumber: type: string socialMediaDetail: type: array items: title: SocialMediaDetail type: object properties: name: type: string link: type: string registrationDate: type: string sim: title: Sim type: object properties: id: type: string reservationID: type: string number: type: string msisdn: title: Msisdn type: object properties: value: type: string targetSystem: type: string NINExemption: type: boolean com_mtn_aggregator_models_response_eva_CustomerDataResponse_Momo: title: Momo type: object properties: momoCashoutWithdrawalValue: type: number format: double momoPaymentOutTransaction: type: integer format: int32 dailyMeanMomoWalletBalance: type: number format: double dailyMedianMomoWalletBalance: type: number format: double daysUnderGhc10MomoWalletBalance: type: integer format: int32 maximumMomoWalletBalance: type: number format: double momoPaymentInTransaction: type: integer format: int32 standardDeviationMomoWalletBalance: type: number format: double daysOverGhc100MomoWalletBalance: type: integer format: int32 momoCashoutWithdrawalVolume: type: integer format: int32 daysOverGhc10MomoWalletBalance: type: integer format: int32 daysOverGhc1000MomoWalletBalance: type: integer format: int32 zeroMomoWalletBalance: type: integer format: int32 minimumMomoWalletBalance: type: number format: double daysOverGhc500MomoWalletBalance: type: integer format: int32 com_mtn_aggregator_models_response_simupgrade_AdditionalStatus: title: AdditionalStatus type: object properties: statusCode: type: string statusMessage: type: string com_mtn_aggregator_models_request_ninsimswap_Msisdn: title: Msisdn type: object properties: value: type: string com_mtn_aggregator_models_request_simupgrade_RequestorCode: title: RequestorCode type: object properties: masterCode: type: string com_mtn_aggregator_models_response_eva_CustomerDataResponse_Device: title: Device type: object properties: deviceModel: type: string deviceManufactuerer: type: string durationWithDevice: type: integer format: int32 deviceType: type: string com_mtn_aggregator_models_request_simswap_Geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_response_SIMValidationDetailResponse: title: SIMValidationDetailResponse type: object properties: data: type: array items: title: SimValidationDetailResponseData type: object properties: data: title: Data type: object properties: requestType: type: string requestSubtype: type: string customertype: type: string resourceType: type: string offlineVerification: type: string biometricUpdateType: type: string consentType: type: string businessType: type: string customerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string Type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string identification: title: Identification type: object properties: customFields: title: CustomFields type: object properties: vnin: type: string agent: title: Agent type: object properties: id: type: string name: type: string deviceId: type: string sfCompanyName: type: string sfCompanyRCNumber: type: string sfRegistrationTM: type: string agentNin: type: string agentLoginCode: type: string agentLoginFPPos: type: string agentUCAuthCode: type: string agentUCAuthFPPos: type: string agentLoginTime: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' dealerDetails: title: DealerDetails type: object properties: id: type: string name: type: string division: type: string contactMedium: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_ContactMedium' geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string document: type: array items: title: Document type: object properties: href: type: string id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string channel: title: Channel type: object properties: id: type: string verificationDetails: title: VerificationDetails type: object properties: verificationStatus: type: string simRegFingerPrint: title: SimRegFingerPrint type: object properties: value: type: string byPass: type: string reason: type: string note: type: string simRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string SimRegFace: title: SimRegFace type: object properties: value: type: string byPass: type: string reason: type: string nimcImg: title: NimcImg type: object properties: value: type: string byPass: type: string reason: type: string nimcSimRegImg: title: NimcSimRegImg type: object properties: value: type: string byPass: type: string reason: type: string nimcFace: title: NimcFace type: object properties: value: type: string byPass: type: string reason: type: string eyeballing: title: Eyeballing type: object properties: userName: type: string action: type: string lockedTill: type: string actionSubType: type: string remarks: type: string title: type: string firstName: type: string middleName: type: string lastName: type: string fullname: type: string maritalStatus: type: string gender: type: string dateOfBirth: type: string nationality: type: string residentialAddress: title: ResidentialAddress type: object properties: residencyStatus: type: string addressOne: type: string addressTwo: type: string addressThree: type: string countryState: type: string countryLga: type: string city: type: string country: type: string street: type: string countryPostal: type: string motherName: type: string religion: type: string stateOfOrign: type: string lga: type: string occupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string languagePref: type: string isForeigner: type: string foreignerType: type: string visitor: type: string emailAddress: type: string phoneNumber: type: string socialMediaDetail: type: array items: title: SocialMediaDetail type: object properties: name: type: string link: type: string sim: title: Sim type: object properties: id: type: string reservationID: type: string Number: type: string msisdn: title: Msisdn type: object properties: id: type: string reservationId: type: string value: type: string momo: title: Momo type: object properties: enable: type: string type: type: string orderDetails: title: OrderDetails type: object properties: id: type: string itemId: type: string maxNDataList: type: array items: title: MaxNDatum type: object properties: status: type: string publicIdentifier: type: string id: type: string customerID: type: string role: type: string imsiNumber: type: string productDetails: type: array items: title: ProductDetail type: object properties: status: type: string publicIdentifier: type: string id: type: array items: type: string customerID: type: string role: type: string productIds: type: array items: type: string privateIdentifier: type: string simInformation: title: SimInformation type: object properties: value: type: string lastModifiedDate: type: string resourceCharacteristics: title: ResourceCharacteristic type: object properties: code: type: string status: type: string message: type: string data: type: array items: title: ResourceDatum type: object properties: code: type: string name: type: string value: type: string valueType: type: string publicIdentifier: type: string name: type: string value: type: string valueType: type: string pin1: type: string pin2: type: string puk1: type: string puk2: type: string imsiNumber: type: string kinNumberData: type: string cardProfile: type: string kindValue: type: string code: type: string name: type: string value: type: string valueType: type: string transactionId: type: string customerId: type: string registrationDate: type: string orderDetails: $ref: '#/components/schemas/com_mtn_aggregator_models_response_simValidationDetailsResponse_OrderDetails' createdDate: type: string statusCode: type: string substatus: type: string statusCode: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' statusMessage: type: string supportMessage: type: string transactionId: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string com_mtn_aggregator_models_request_simupgrade_SimType: title: SimType type: object properties: masterCode: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Override: title: Override type: object properties: key: type: string reason: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_CustomFields: title: CustomFields type: object properties: vnin: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_OccupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string com_mtn_aggregator_models_request_esim_CancelOrderRequest: title: CancelOrderRequest type: object properties: eid: type: string finalProfileStatusIndicator: title: ProfileStatus type: object properties: value: type: string iccid: type: string matchingId: type: string com_mtn_aggregator_models_request_ninsimswap_PostalAddress: title: PostalAddress type: object properties: countryState: type: string com_mtn_aggregator_models_request_simupgrade_SimDetailsData: title: SimDetailsData type: object properties: user: type: string docTitle: type: string docType: type: string docAuthor: type: string securityGroup: type: string directReleaseNewCheckInDoc: type: string docAccount: type: string base64: type: string recordStatus: type: string customerId: type: string customerPhotoType: type: string biometricType: type: string submissionDate: type: string channel: type: string documentName: type: string channelRefId: type: string customerMsisdn: type: string updateDate: type: string fingerprintNumber: type: string customerMsisdnAdditional: type: string doFileCopy: type: string parentGuid: type: string application: type: string primaryFileName: type: string primaryFilePath: type: string content: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_GeographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_response_simupgrade_SimUpgradeResponse: title: SimUpgradeResponse type: object properties: transactionId: type: string statusCode: type: string referenceNumber: type: string statusMessage: type: string sequenceNo: type: string serviceRequestNumber: type: string serviceRequestStatus: type: string orderStatus: type: string errorTransactionId: type: string status: type: string additionalStatus: title: AdditionalStatus type: object properties: statusCode: type: string statusMessage: type: string customReference: title: CustomReference type: object properties: refType: type: string refValue: type: string com_mtn_aggregator_models_response_esim_DownloadOrderAPIResponse: title: DownloadOrderAPIResponse type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string transactionId: type: string sequenceNo: type: string com_mtn_aggregator_models_response_simrequest_SimRequestResponse: title: SimRequestResponse type: object properties: statusCode: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' data: type: string statusMessage: type: string supportMessage: type: string transactionId: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string com_mtn_aggregator_models_request_simupgrade_Billing: title: Billing type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string com_mtn_aggregator_models_request_ninsimswap_OccupationalDetails: title: OccupationalDetails type: object properties: occupation: type: string organizationName: type: string com_mtn_aggregator_models_request_simrequest_CustomerData: title: CustomerData type: object properties: personalInfo: title: PersonalInfo type: object properties: residentialAddress: title: ResidentialAddress type: object properties: gpsLocation: type: string streetAddress: type: string city: type: string suburb: type: string idNumber: type: string gender: type: string documents: type: array items: type: object dateOfBirth: type: string regionId: type: string nonCitizen: type: boolean otherNames: type: string otherSourceOfFunds: type: string sourceOfFundsId: type: string nextOfKinPhoneNumber: type: string nationality: type: string surname: type: string nextOfKinName: type: string phoneNumber: type: string countryId: type: string email: type: string alternativePhoneNumber: type: string businessInfo: title: BusinessInfo type: object properties: businessSuburb: type: string businessName: type: string businessTradeName: type: string businessStreetAddress: type: string documents: type: array items: type: object businessCity: type: string businessGpsLocation: type: string businessCertificateNumber: type: string existingMomoAccounts: type: string businessEmail: type: string otherBusinessTypeName: type: string businessTypeId: type: string businessTaxNumber: type: string termsConditionsInfo: title: TermsConditionsInfo type: object properties: termsConditionsAgreed: type: boolean convictionQuestions: type: array items: title: ConvictionQuestionsItem type: object properties: answer: title: YesNoChoice type: object properties: value: type: string attachment: type: string additionalInfo: type: string questionId: type: integer format: int32 authenticationQuestions: type: array items: title: AuthenticationQuestionsItem type: object properties: answer: type: string questionId: type: integer format: int32 com_mtn_aggregator_models_request_ninsimswap_SocialMediaDetail: title: SocialMediaDetail type: object properties: name: type: string link: type: string com_mtn_aggregator_models_request_ninsimswap_Address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string com_mtn_aggregator_models_request_simupgrade_Requestor: title: Requestor type: object properties: requestorName: type: string requestorCode: title: RequestorCode type: object properties: masterCode: type: string com_mtn_aggregator_models_request_ninsimswap_ContactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string com_mtn_aggregator_models_response_eva_CustomerDataResponse_Airtime: title: Airtime type: object properties: daysOverGhc10AirtimeBalance: type: integer format: int32 airtimeTopUpHistory: type: number format: double daysOverGhc500AirtimeBalance: type: integer format: int32 daysOverGhc1000AirtimeBalance: type: integer format: int32 daysOverGhc100AirtimeBalance: type: integer format: int32 dailyMeanAirtimeBalance: type: number format: double airtimeUsageGhc: type: number format: double minimumAirtimeBalance: type: number format: double maximumAirtimeBalance: type: number format: double zeroAirtimeBalance: type: integer format: int32 daysUnderGhc10AirtimeBalance: type: integer format: int32 standardDeviationAirtimeBalance: type: number format: double com_mtn_aggregator_models_response_simupgrade_CustomReference: title: CustomReference type: object properties: refType: type: string refValue: type: string com_mtn_aggregator_models_request_ninsimswap_Override: title: Override type: object properties: key: type: string reason: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_ProductDetail: title: ProductDetail type: object properties: status: type: string publicIdentifier: type: string id: type: array items: type: string customerID: type: string role: type: string com_mtn_aggregator_models_request_ninsimswap_AdditionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string com_mtn_aggregator_models_request_simrequest_AuthenticationQuestionsItem: title: AuthenticationQuestionsItem type: object properties: answer: type: string questionId: type: integer format: int32 com_mtn_aggregator_models_response_simValidationDetailsResponse_ResourceCharacteristic: title: ResourceCharacteristic type: object properties: code: type: string status: type: string message: type: string data: type: array items: title: ResourceDatum type: object properties: code: type: string name: type: string value: type: string valueType: type: string publicIdentifier: type: string name: type: string value: type: string valueType: type: string pin1: type: string pin2: type: string puk1: type: string puk2: type: string imsiNumber: type: string kinNumberData: type: string cardProfile: type: string kindValue: type: string com_mtn_aggregator_models_response_maxnreach_CustomerIdentification: title: CustomerIdentification type: object properties: status: type: string publicIdentifier: type: string idNumber: type: string customerID: type: string role: type: string com_mtn_aggregator_models_request_simupgrade_NewSIMSwapData: title: NewSIMSwapData type: object properties: serviceRequests: title: ServiceRequest type: object properties: salesDetails: title: SalesDetails type: object properties: location: type: string salesChannel: title: SalesChannel type: object properties: masterCode: type: string upgrade: type: string isOtpValidaate: type: string selectedActionType: type: string serviceRequestContactType: title: ServiceRequestContactType type: object properties: masterCode: type: string instantSimSwap: type: string serviceRequestComments: type: string userDetails: title: UserDetails type: object properties: userName: type: string loginName: type: string customerInfo: title: CustomerInfo type: object properties: serviceNumber: type: string customerCode: type: string serviceCode: type: string accountCode: type: string noSwapByPass: type: string swapReferenceNumber: type: string agentMSISDN: type: string agentName: type: string agentEmailID: type: string requestor: title: Requestor type: object properties: requestorName: type: string requestorCode: title: RequestorCode type: object properties: masterCode: type: string identificationDetail: type: array items: title: IdentificationDetail type: object properties: name: type: string idType: title: IdType type: object properties: masterCode: type: string documentPurpose: title: DocumentPurpose type: object properties: masterCode: type: string uploadChannel: title: UploadChannel type: object properties: masterCode: type: string idNumber: type: string type: type: string uploadedDocument: type: array items: title: UploadedDocument type: object properties: idType: type: string documentPurpose: type: string channelRefID: type: string documentName: type: string documentRequired: type: string submissionDate: type: string uploadedFileName: type: string offlineUploadMode: type: string uploadDocumentEnableFlag: type: string proxySwap: type: string isSubmitAPIFlag: type: string newSimDetails: title: NewSimDetails type: object properties: simType: title: SimType type: object properties: masterCode: type: string imsiNumber: type: string pukNumber: type: string simCategory: title: SimCategory type: object properties: masterCode: type: string simNumber: type: string serviceRequestType: title: ServiceRequestType type: object properties: masterCode: type: string serviceRequestSubType: title: ServiceRequestSubType type: object properties: masterCode: type: string validationRequired: type: string effectiveType: type: string requestLevel: type: string charges: title: Charges type: object properties: upfront: title: Upfront type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string billing: title: Billing type: object properties: totalChargeExclTax: type: string totalDiscount: type: string totalChargeInclTax: type: string totalTax: type: string totalWaivedAmount: type: string serviceRequestCreationDate: title: ServiceRequestCreationDate type: object properties: dollardate: type: string serviceRequestProcessingDate: title: ServiceRequestProcessingDate type: object properties: dollardate: type: string effectiveDate: type: string serviceRequestReason: title: ServiceRequestReason type: object properties: masterCode: type: string evalidatorData: title: EvalidatorData type: object properties: validatedResponse: title: ValidatedResponse type: object properties: requiredScore: type: string actualScore: type: string response: type: array items: title: ResponseList type: object properties: responseType: type: string evalidatorTypes: title: EvalidatorTypes type: object properties: evalidatorType: type: string simChangeSelectionType: type: string selctedFormData: type: string eValidatorFinalSubmitData: type: array items: title: EValidatorFinalSubmitData type: object properties: question: type: string providedData: type: string result: type: string paymentDetails: title: PaymentDetails type: object properties: paymentDate: title: PaymentDate type: object properties: dollardate: type: string paymentType: type: string amount: title: Amount type: object properties: value: type: number format: double unit: type: string ninIncluded: type: string ninDetails: title: NinDetails type: object properties: agentId: type: string agentMsisdn: type: string ninId: type: string ninStatus: type: string emailId: type: string pinRef: type: string referenceNumber: type: string documentChannel: type: string idType: type: string documentId: type: string verificationType: type: string customerSimRegRequest: type: string simRegImgMatchParent: type: string nimcImgMatchPercent: type: string nimcOfflineFlag: type: string consentType: type: string fingerprintPosition: type: string referralCode: type: string requestType: type: string vNIN: type: string userId: type: string firstName: type: string lastName: type: string dateOfBirth: type: string firstNameMatch: type: string lastNameMatch: type: string dateOfBirthMatch: type: string nimcSimRegFMPercent: type: string sequenceNumber: type: string nimcData: title: NimcData type: object properties: birthCountry: type: string birthDate: type: string birthLga: type: string birthState: type: string centralId: type: string educationalLevel: type: string email: type: string employmentStatus: type: string firstName: type: string gender: type: string heigth: type: string maritalStatus: type: string middleName: type: string nin: type: string nokAddress1: type: string nokAddress2: type: string nokFirstname: type: string nokLga: type: string nokMiddlename: type: string nokState: type: string nokSurname: type: string nokTown: type: string nativeLanguage: type: string otherLanguage: type: string otherName: type: string previousFirstName: type: string previousMiddleName: type: string profession: type: string previousLastName: type: string religion: type: string residenceAddressLine1: type: string residenceTown: type: string residenceLga: type: string residenceState: type: string residenceStatus: type: string selfOriginLga: type: string selfOriginPlace: type: string selfOriginState: type: string surname: type: string telephoneNo: type: string title: type: string cardStatus: type: string documentNumber: type: string trackingId: type: string com_mtn_madapi_template_dto_request_gh_EVASIMInfoRequestGha: title: EVASIMInfoRequestGha type: object properties: msisdn: type: string com_mtn_aggregator_models_request_simupgrade_SalesChannel: title: SalesChannel type: object properties: masterCode: type: string com_mtn_aggregator_models_request_simrequest_ResidentialAddress: title: ResidentialAddress type: object properties: gpsLocation: type: string streetAddress: type: string city: type: string suburb: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_SocialMediaDetail: title: SocialMediaDetail type: object properties: name: type: string link: type: string com_mtn_aggregator_models_request_simupgrade_ResponseList: title: ResponseList type: object properties: responseType: type: string com_mtn_aggregator_models_request_ninsimswap_SimRegImg: title: SimRegImg type: object properties: value: type: string byPass: type: string reason: type: string note: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_MaxNDatum: title: MaxNDatum type: object properties: status: type: string publicIdentifier: type: string id: type: string customerID: type: string role: type: string com_mtn_aggregator_models_request_simupgrade_EvalidatorTypes: title: EvalidatorTypes type: object properties: evalidatorType: type: string simChangeSelectionType: type: string com_mtn_aggregator_models_response_ResetSimSwapResponse: title: ResetSimSwapResponse type: object properties: responseCode: type: string responseDescription: type: string otherInfo: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequestProcessingDate: title: ServiceRequestProcessingDate type: object properties: dollardate: type: string com_mtn_madapi_commons_models_error_APIError: title: APIError type: object properties: statusMessage: type: string supportMessage: type: string transactionId: type: string timestamp: type: string path: type: string method: type: string statusCode: type: string downstreamStatusCode: type: integer format: int32 sequenceNo: type: string com_mtn_aggregator_models_request_simupgrade_SalesDetails: title: SalesDetails type: object properties: location: type: string salesChannel: title: SalesChannel type: object properties: masterCode: type: string com_mtn_aggregator_models_request_ninsimswap_EValidator: title: EValidator type: object properties: answers: title: Answers type: object properties: dateOfBirth: type: string motherMaidenName: type: string frequentlyDialledNumbers: type: array items: type: string registrationYear: type: string lastRechargedDate: type: string lastRechargedAmount: type: string stateOfOrigin: type: string lgaOfOrigin: type: string com_mtn_aggregator_models_response_esim_OrderAPIResponse: title: OrderAPIResponse type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string data: title: ConfirmResponse type: object properties: matchingId: type: string smdpAddress: type: string eid: type: string message: type: string customerId: type: string error: $ref: '#/components/schemas/com_mtn_madapi_commons_models_error_APIError' transactionId: type: string sequenceNo: type: string com_mtn_aggregator_models_starterpack_StarterPackResponse: title: StarterPackResponse type: object properties: statusMessage: type: string createdAt: type: string transactionId: type: string statusCode: type: string customerId: type: string error: title: APIError type: object properties: statusMessage: type: string supportMessage: type: string transactionId: type: string timestamp: type: string path: type: string method: type: string statusCode: type: string downstreamStatusCode: type: integer format: int32 sequenceNo: type: string data: type: string supportMessage: type: string timeStamp: type: string path: type: string method: type: string sequenceNo: type: string com_mtn_aggregator_models_request_simupgrade_ValidatedResponse: title: ValidatedResponse type: object properties: requiredScore: type: string actualScore: type: string response: type: array items: title: ResponseList type: object properties: responseType: type: string com_mtn_aggregator_models_request_simupgrade_UploadChannel: title: UploadChannel type: object properties: masterCode: type: string com_mtn_aggregator_models_request_ninsimswap_Geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string com_mtn_aggregator_models_request_ninsimswap_Document: title: Document type: object properties: id: type: string type: type: string subType: type: string name: type: string docChannel: type: string override: type: array items: title: Override type: object properties: key: type: string reason: type: string additionalInfo: title: AdditionalInfo type: object properties: fingerPosition: type: string com_mtn_aggregator_models_request_simupgrade_ServiceRequestCreationDate: title: ServiceRequestCreationDate type: object properties: dollardate: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_Channel: title: Channel type: object properties: id: type: string com_mtn_aggregator_models_response_simValidationDetailsResponse_CustomerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string Type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string com_mtn_aggregator_models_request_simswap_RelatedParty: title: RelatedParty type: object properties: id: type: string name: type: string role: type: string geographicLocation: title: GeographicLocation type: object properties: spatialRef: type: string geometry: title: Geometry type: object properties: x: type: string "y": type: string z: type: string '@referredType': type: string com_mtn_aggregator_models_request_ninsimswap_CustomerIdentification: title: CustomerIdentification type: object properties: idNumber: type: string type: type: string issuername: type: string expiryDate: type: string givenName: type: string familyName: type: string gender: type: string birthDate: type: string status: type: string nimcTransactionId: type: string customFields: title: CustomFields type: object properties: vnin: type: string contactMedium: title: ContactMedium type: object properties: contactNo: type: string emailId: type: string address: title: Address type: object properties: addressLine1: type: string addressLine2: type: string lga: type: string stateOrProvince: type: string city: type: string postalCode: type: string securitySchemes: OAuth2: type: oauth2 flows: clientCredentials: tokenUrl: https://api.mtn.com/v1/oauth/access_token scopes: {} Bearer: type: http description: Bearer token received from OAuth2.0 authentication with the MADAPI scheme: bearer bearerFormat: JWT