openapi: 3.0.1 info: title: Customer Profile Aggregator description: "This API retrieves and returns customer profile information, including\ \ tariff plan details, activation status, KYC data, and linked numbers, thereby\ \ improving customer service and operational efficiency." license: name: MADAPI url: https://developers.mtn.com/ version: "2.0" servers: - url: https://api.mtn.com/ description: Generated server url paths: /customers/{customerId}/set-lang: put: tags: - profile-service-controller summary: Set Lang Service description: This operation enables the capability of setting or Changing an MTN Customer Language Service using customer id(unique identifier). operationId: setLangService parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string - name: channelId in: header required: false schema: type: string - name: lang in: query required: true schema: type: string - name: customerIdType in: query required: false schema: type: string - name: targetSystem in: query required: false schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/SetLangResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{customerId}: patch: tags: - profile-service-controller summary: To Update customer profile description: This operation enables the capability of Updating a customer profile of an MTN customer via the EWP backend system using customer id. operationId: updateProfile parameters: - name: customerId in: path required: true schema: type: string - name: X-Authorization in: header required: false schema: type: string - name: idType in: query required: false schema: type: string - name: segment in: query required: false schema: type: string - name: targetSystem in: query required: false schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ProfilesRequest' required: true responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/APIResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{id}: get: tags: - profile-service-controller summary: Retrieves a customer profile. description: "Retrieves the customer profile of an MTN customer. The customer\ \ profile includes 4 main objects: Location (Country and Operator), Billing\ \ Plan and related details, Subscriptions for VAS and Digital Services, Loans\ \ details, and Transactions Summaries." operationId: getCustomerProfile parameters: - name: id in: path required: true schema: type: string - name: propset in: query required: false schema: type: string default: basic - name: prefLanguage in: query required: false schema: type: string - name: x-authorization in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: languageCode in: header required: false schema: type: string - name: x-origin-channelid in: header required: false schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/Customer' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{customerId}/tenure: get: tags: - profile-service-controller summary: Get Customer Tenure information description: This API operation enables the capability of Chenosis to be able to retrieve an MTN Customer Tenure information using customer id(unique identifier). operationId: custTenure parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string default: "" - name: targetSystem in: query required: false schema: type: string default: "" responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/TenureResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{customerId}/summary: get: tags: - profile-service-controller summary: Get Customer Summary information description: This API operation enables the capability of being able to retrieve an MTN Customer Summary information using customer id(unique identifier). operationId: customerSummary parameters: - name: customerId in: path required: true schema: type: string - name: id in: header required: false schema: type: string - name: idType in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: transactionDate in: header required: false schema: type: string - name: x-origin-channelId in: header required: false schema: type: string - name: targetSystem in: header required: false schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ELSummaryResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{customerId}/loan-profile: get: tags: - profile-service-controller summary: Retrieves a customer loan profile. description: This operation enables the capability of retrieving the customer loan profile of an MTN customer using customer id(unique identifier). operationId: getLoanProfile parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string - name: targetSystem in: query required: false schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/LoanProfileResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{customerId}/callback-eligibility: get: tags: - profile-service-controller summary: Customer Profile - Callback Eligibility description: This operation enables the capability of retrieving a Callback Eligibility of an MTN Subscriber using customer id(unique identifier). operationId: callbackEligibility parameters: - name: customerId in: path required: true schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/UpgradeEligibilityResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/{customerId}/activityStatus: get: tags: - profile-service-controller summary: Get Customer Activity status information description: This API operation enables the capability of Chenosis to be able to retrieve an MTN Customer Activity status information. operationId: custActivityStatus parameters: - name: customerId in: path required: true schema: type: string - name: transactionId in: header required: false schema: type: string default: "" - name: targetSystem in: query required: false schema: type: string default: "" - name: requesterMsisdn in: query required: false schema: type: string default: "" responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/ActivityResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' /customers/upgrade-eligibility/{customerId}: get: tags: - profile-service-controller summary: Customer Profile - Upgrade Eligibility description: This operation enables the capability of retrieving the Upgrade Eligibility Date of the MTN Subscriber using customer id(unique identifier). operationId: upgradeEligibility parameters: - name: customerId in: path required: true schema: type: string - name: sourceIdentifier in: query required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: customerSystem in: query required: true schema: type: string responses: "200": description: OK content: application/json: schema: $ref: '#/components/schemas/UpgradeEligibilityResponse' "400": description: Bad Request content: application/json: schema: $ref: '#/components/schemas/BadRequestErrorResponse' "401": description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/UnauthorizedErrorResponse' "500": description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/ServerErrorResponse' components: schemas: APIError: type: object properties: timestamp: type: string transactionId: type: string sequenceNo: type: string statusCode: type: string statusMessage: type: string error: type: string error_description: type: string BalanceData: type: object properties: balance: type: number format: float formatted: type: string unit: type: string isUnlimited: type: boolean BalanceSummary: type: object properties: description: type: string validityDays: type: string balance: type: string expiry: type: string renewalExpiry: type: string Balances: type: object properties: data: $ref: '#/components/schemas/BalanceData' voice: $ref: '#/components/schemas/BalanceData' maxi: $ref: '#/components/schemas/BalanceData' Data: type: object properties: mainBalance: type: string balances: type: array items: $ref: '#/components/schemas/Balances' balanceSummary: type: array items: $ref: '#/components/schemas/BalanceSummary' HypeBalanceResponse: type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string transactionId: type: string customerId: type: string data: type: array items: $ref: '#/components/schemas/Data' transaction-summaries: type: string Links: type: object additionalProperties: $ref: '#/components/schemas/Link' ResponseData: type: object properties: UpgradeEligibility: type: array items: $ref: '#/components/schemas/UpgradeEligibility' SetLangResponse: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' timestamp: type: string data: $ref: '#/components/schemas/ResponseData' apiError: $ref: '#/components/schemas/APIError' _links: $ref: '#/components/schemas/Links' APIResponse: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' _links: $ref: '#/components/schemas/Links' Characteristic: type: object properties: name: type: string valueType: type: string value: type: string ProfilesRequest: type: object properties: description: type: string characteristics: type: array items: $ref: '#/components/schemas/Characteristic' Account: type: object properties: firstName: type: string lastName: type: string accountName: type: string accountId: type: string description: type: string status: type: string accountType: type: string activationDate: type: string tariffActivationDate: type: string packageCode: type: string packageDescription: type: string simNumber: type: string imsiNumber: type: string mobileDetail: $ref: '#/components/schemas/MobileDetail' Address: type: object properties: type: type: string city: type: string country: type: string postBox: type: string value: type: string value2: type: string value3: type: string Customer: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' customerSystem: type: string location: $ref: '#/components/schemas/CustomerLocation' plan: $ref: '#/components/schemas/CustomerPlan' plans: type: array items: $ref: '#/components/schemas/Plans' loans: $ref: '#/components/schemas/CustomerLoans' momo: $ref: '#/components/schemas/CustomerMoMo' accounts: $ref: '#/components/schemas/CustomerAccount' kyc: $ref: '#/components/schemas/CustomerKyc' subscriptions: $ref: '#/components/schemas/CustomerSubscriptions' characteristics: type: array items: $ref: '#/components/schemas/Characteristic' transactionSummaries: type: array items: $ref: '#/components/schemas/TransactionSummaries' _links: $ref: '#/components/schemas/Links' CustomerAccount: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: type: array items: $ref: '#/components/schemas/Account' _links: $ref: '#/components/schemas/Links' CustomerBalance: type: object properties: type: type: string enum: - DATA - VOICE amount: type: number expiryDate: type: string currency: type: string CustomerKyc: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: type: array items: $ref: '#/components/schemas/KYC' _links: $ref: '#/components/schemas/Links' CustomerLoans: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' _links: $ref: '#/components/schemas/Links' CustomerLocation: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: $ref: '#/components/schemas/Location' _links: $ref: '#/components/schemas/Links' CustomerMoMo: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: $ref: '#/components/schemas/MoMo' _links: $ref: '#/components/schemas/Links' CustomerPlan: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: $ref: '#/components/schemas/Plan' _links: $ref: '#/components/schemas/Links' CustomerSubscriptions: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' services: type: object additionalProperties: $ref: '#/components/schemas/SubscriptionService' _links: $ref: '#/components/schemas/Links' KYC: type: object properties: idType: type: string idNumber: type: string dateOfBirth: type: string gender: type: string enum: - M - F title: type: string firstName: type: string lastName: type: string maritalStatus: type: string nationality: type: string email: type: string alternateMsisdn: type: string workStatusCode: type: string jobDesignation: type: string location: $ref: '#/components/schemas/Location' idExpiryDate: type: string Location: type: object properties: country: type: string operator: type: string physicalAddress: $ref: '#/components/schemas/Address' postalAddress: $ref: '#/components/schemas/Address' businessAddress: $ref: '#/components/schemas/Address' MoMo: type: object properties: id: type: string validAccountHolder: type: boolean MobileDetail: type: object properties: imsiNumber: type: string Plan: type: object properties: status: type: string enum: - Active - Suspended - Inactive - RICA Barred - Blacklisted type: type: string enum: - Prepaid - Postpaid - Hybrid createdDate: type: string endDate: type: string language: type: string balance: type: array items: $ref: '#/components/schemas/CustomerBalance' Plans: type: object properties: category: type: string data: type: array items: $ref: '#/components/schemas/Data' Subscription: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' subscriptionId: type: string subscriptionProviderId: type: string subscriptionName: type: string subscriptionDescription: type: string subscriptionLength: type: string registrationChannel: type: string startDate: type: string endDate: type: string email: type: string amountCharged: type: number productCost: type: number subscriptionPaymentSource: type: string sendSMSNotification: type: boolean beneficiaryId: type: string autoRenew: type: boolean statusDescription: type: string nodeId: type: string callbackUrl: type: string recharge: type: string vasCode: type: integer format: int32 sysProcessedTime: type: string adjustmentType: type: string amountBefore: type: number format: double amountAfter: type: number format: double transaction: type: string cvmoffer: type: boolean _links: $ref: '#/components/schemas/Links' SubscriptionService: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: type: array items: $ref: '#/components/schemas/Subscription' subscriptionProviderId: type: string subscriptionProviderName: type: string subscriptionProviderDescription: type: string _links: $ref: '#/components/schemas/Links' TransactionSummaries: type: object properties: requestId: type: string dateRange: type: string data: $ref: '#/components/schemas/TransactionSummariesData' TransactionSummariesData: type: object properties: paymentAllowed: type: boolean marketingFlag: type: boolean lendingFlag: type: boolean TenureData: type: object properties: tenure: type: string TenureResponse: type: object properties: customerId: type: string statusCode: type: string statusMessage: type: string supportMessage: type: string transactionId: type: string data: $ref: '#/components/schemas/TenureData' sequenceNo: type: string path: type: string method: type: string timestamp: type: string get_links: $ref: '#/components/schemas/Links' error: type: string error_description: type: string Amount: type: object properties: amount: type: string currencyCode: type: string ELCover: type: object properties: benefit: type: string policyNumber: type: string policyStatus: type: string productCode: type: string consents: type: string coverPeriod: type: string coverAmount: $ref: '#/components/schemas/Amount' totalPremium: $ref: '#/components/schemas/Amount' ELSummaryResponse: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' path: type: string method: type: string type: type: string _links: $ref: '#/components/schemas/Links' memberAggrementNumber: type: string coverDetails: $ref: '#/components/schemas/ELCover' BalanceList: type: object properties: accountId: type: string accountType: type: string amount: type: integer format: int64 LastLoanTakenDate: type: object properties: feeAmount: type: integer format: int64 lastLoanDate: type: integer format: int64 loanBand: $ref: '#/components/schemas/LoanBand' loanId: type: string principalAmount: type: integer format: int64 LoanBand: type: object properties: bandGroup: type: integer format: int64 bandName: type: string LoanProfileData: type: object properties: profile: $ref: '#/components/schemas/Profile' balanceList: type: array items: $ref: '#/components/schemas/BalanceList' LoanProfileResponse: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: $ref: '#/components/schemas/LoanProfileData' _links: $ref: '#/components/schemas/Links' Profile: type: object properties: availableCreditLimit: type: integer format: int64 excludedFromService: type: string firstContactDate: type: integer format: int64 language: type: string lastContactDate: type: integer format: int64 lastLoanDate: type: integer format: int64 lastLoanTakenDate: $ref: '#/components/schemas/LastLoanTakenDate' marketingChannels: type: string totalCreditLimit: type: integer format: int64 UpgradeEligibility: type: object properties: name: type: string valueType: type: string value: type: string UpgradeEligibilityResponse: type: object properties: statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string customerId: type: string transactionId: type: string sequenceNo: type: string balanceData: $ref: '#/components/schemas/HypeBalanceResponse' data: $ref: '#/components/schemas/ResponseData' _links: $ref: '#/components/schemas/Links' ActivityResponse: type: object properties: customerId: type: string statusCode: type: string enum: - "3005" - "2000" - "5000" - "4000" - "0000" - "0001" - "0002" - "200" - "1000" - "3002" - "3001" - "3000" - "2006" - "0001" - "3000" - "5000" - "3000" - "1012" - "1002" - "1003" - "1000" - "3001" - "1001" - "5000" - "3003" - "1013" - "3007" - "4001" - "1002" - "1005" - "1007" - "6001" - "2006" - "3325" - "3326" - "3327" - "4001" - "4002" - "1070" - "1083" - "0203" - "4003" - "3014" - "3009" - "4015" statusMessage: type: string supportMessage: type: string transactionId: type: string data: $ref: '#/components/schemas/ActivityStatusData' sequenceNo: type: string path: type: string method: type: string timestamp: type: string get_links: $ref: '#/components/schemas/Links' error: $ref: '#/components/schemas/Error' error_description: type: string ActivityStatusData: type: object properties: activityStatus: type: string referenceCode: type: string Error: type: object properties: path: type: object downstreamStatusCode: type: object sequenceNo: type: object method: type: string statusMessage: type: string transactionId: type: string supportMessage: type: string timestamp: type: string statusCode: type: string BadRequestErrorResponse: type: object properties: statusCode: type: string example: "5000" statusMessage: type: string example: INVALID_INPUT_PARAMETERS supportMessage: type: string example: The input parameters provided are invalid. httpStatus;: type: object example: code: 400 series: CLIENT_ERROR reason: Bad Request timestamp: type: string example: 2025-08-05T20:57:21Z UnauthorizedErrorResponse: type: object properties: statusCode: type: string example: "4000" statusMessage: type: string example: Unauthorized supportMessage: type: string example: The supplied authentication is invalid. httpStatus;: type: object example: code: 401 series: CLIENT_ERROR reason: Unauthorized timestamp: type: string example: 2025-08-05T20:57:21Z ServerErrorResponse: type: object properties: statusCode: type: string example: "3001" statusMessage: type: string example: INTERNAL_SERVER_ERROR supportMessage: type: string example: An internal server error occurred and processing could not be completed. httpStatus;: type: array example: code: 500 series: SERVER_ERROR reason: Internal Server Error timestamp: type: string example: 2025-08-05T20:57:21Z Link: type: object properties: href: type: string hreflang: type: string title: type: string type: type: string deprecation: type: string profile: type: string name: type: string templated: type: boolean