openapi: 3.2.0 info: description: The Onboarding API, groups together a pool of operations for the creation of a request for a digital bank account. version: v1 title: Onboarding Device API servers: - description: Sandbox url: https://sandbox-api.novopayment.com/onboarding/v1 security: - oAuth2ClientCredentials: [] tags: - name: Device paths: /device: post: summary: Device Registration description: This operation allows to register a new device or update an existing one. requestBody: $ref: '#/components/requestBodies/RQDeviceRegistration' operationId: DeviceRegistration responses: '200': $ref: '#/components/responses/RSDeviceRegistration200' '400': $ref: '#/components/responses/RSDeviceRegistration400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' tags: - Device /device/pushtoken: post: summary: Token Update description: 'This operation allows to register or update a push token of a device. This token is used to send notifications related to transactional and non-transactional flows. * Applies only for Android and iOS platforms.' requestBody: $ref: '#/components/requestBodies/RQTokenUpdate' operationId: TokenUpdate responses: '200': $ref: '#/components/responses/RSTokenUpdate200' '400': $ref: '#/components/responses/RSTokenUpdate400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' tags: - Device components: examples: InvalidAccessToken: value: code: 401.25.990 message: Invalid Access Token datetime: '2020-01-03T16:05:56.517Z' InvalidSignature: value: code: 401.25.992 message: Invalid signature datetime: '2020-01-03T16:05:56.517Z' InvalidData: value: code: 400.25.089 message: Invalid data. datetime: '2020-01-03T16:05:56.517Z' InternalServerError: value: code: 500.25.001 message: Internal Server Error datetime: '2020-01-03T16:05:56.517Z' AccessTokenExpired: value: code: 401.25.993 message: Access token expired datetime: '2020-01-03T16:05:56.517Z' AccessTokenNotApproved: value: code: 401.25.991 message: Access Token not approved datetime: '2020-01-03T16:05:56.517Z' responses: RSDeviceRegistration200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSDeviceRegistration200' examples: Success: value: code: 200.25.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' RS401: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/RS401' examples: Invalid Access Token: $ref: '#/components/examples/InvalidAccessToken' Access Token Not Approved: $ref: '#/components/examples/AccessTokenNotApproved' Invalid Signature: $ref: '#/components/examples/InvalidSignature' Access Token Expired: $ref: '#/components/examples/AccessTokenExpired' RSDeviceRegistration400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSDeviceRegistration400' examples: Invalid Data: $ref: '#/components/examples/InvalidData' RS500: description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/RS500' examples: Internal Server Error: $ref: '#/components/examples/InternalServerError' RSTokenUpdate200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSTokenUpdate200' examples: Success: value: code: 200.25.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' RSTokenUpdate400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSTokenUpdate400' examples: Invalid Data: $ref: '#/components/examples/InvalidData' schemas: RQTokenUpdate: type: object required: - pushToken properties: pushToken: type: string description: New token to register, exclusive to mobile apps. example: dzgIOgA1u_c:APA91bF9nQq8SiWd4Tf3q8U5Sb4EMu00DgA08Cq0EpOvElksQ-HZdlrgf8o8tgjH7IL_liXqRnnX3LBDOCHTDFp2HO4fwkPjtFEQWT0N4mt-rNTexFJSy26D1JskFELlYwMse6aBKxMt maxLength: 180 RSTokenUpdate400: type: object required: - code - message - datetime properties: code: type: string example: 400.25.003 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Params required description: Response code description maxLength: 140 datetime: type: string description: Opertion Timestamp example: '2020-01-03T16:05:56.517Z' format: date-time RS500: type: object required: - code - message - datetime properties: code: type: string example: 500.01.999 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Internal Server Error description: Response code description maxLength: 140 datetime: type: string example: '2020-01-03T16:05:56.517Z' description: Opertion Timestamp format: date-time RS401: type: object required: - code - message - datetime properties: code: type: string example: 401.01.990 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Invalid Access Token description: Response code description maxLength: 140 datetime: type: string description: Opertion Timestamp example: '2020-01-03T16:05:56.517Z' format: date-time RSDeviceRegistration200: type: object required: - code - message - datetime properties: code: type: string description: Operation response code example: 200.25.000 maxLength: 10 message: type: string description: Response code description example: Process Ok maxLength: 140 datetime: type: string description: Opertion Timestamp example: '2020-01-03T16:05:56.517Z' format: date-time RSTokenUpdate200: type: object required: - code - message - datetime properties: code: type: string description: Operation response code example: 200.25.000 maxLength: 10 message: type: string description: Response code description example: Process Ok maxLength: 140 datetime: type: string description: Opertion Timestamp example: '2020-01-03T16:05:56.517Z' format: date-time RQDeviceRegistration: type: object required: - channelId - screenResolution - alias - model - timezone - gpsCountryId - networkOperator - pushToken - brand - osVersion - platform - simMcc - deviceId properties: androidId: type: string description: Identifier of the Android device sending the request. example: deOaGTS5co4 maxLength: 38 channelId: type: integer description: Device registration channel. example: 1 maxLength: 38 screenResolution: type: string description: Screen resolution of the device sending the request. example: 375x812 maxLength: 10 alias: type: string description: Device assigned name by the customer. example: 7A172B26D-EC90-442D-8425-CF225C4A4A934 maxLength: 70 model: type: string description: Mobile device model sending the request. example: iPhone12 maxLength: 50 timezone: type: string description: Time zone from where the request is sent. example: GMT-5 maxLength: 50 simMnc: type: integer description: Network code of the sim card’s device to be registered. Applies only to mobile apps. example: 123 maxLength: 10 simCountryId: type: integer description: Country identifier of the sim card. Applies only to mobile apps. example: 233 maxLength: 38 gpsCountryId: type: integer description: Country identifier of the device's GPS. example: 233 maxLength: 38 networkOperator: type: string description: Mobile operator of the device from which the service is consumed. example: T-mobile maxLength: 20 pushToken: type: string description: Token generated by firebase that identifies each device to send notifications. Applies only to mobile apps. example: dzgIOgA1u_c:APA91bF9nQq8SiWd4Tf3q8U5Sb4EMu00DgA08Cq0EpOvElksQ-HZdlrgf8o8tgjH7IL_liXqRnnX3LBDOCHTDFp2HO4fwkPjtFEQWT0N4mt-rNTexFJSy26D1JskFELlYwMse6aBKxMt maxLength: 180 brand: type: string description: Device brand that consumes the service. example: Apple maxLength: 50 osVersion: type: string description: Operative system version. example: 13.3 maxLength: 50 platform: type: string description: Platform from where the service is consumed. example: iOS maxLength: 60 simMcc: type: integer description: Country code of the sim card the device has. Applies only to mobile apps. example: 732 maxLength: 38 deviceId: type: string description: Device identifier of the operating system. example: 7A1722B6D-EC90-442D-8425-CF225C43AA934 maxLength: 70 RSDeviceRegistration400: type: object required: - code - message - datetime properties: code: type: string example: 400.25.003 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Params required description: Response code description maxLength: 140 datetime: type: string description: Opertion Timestamp example: '2020-01-03T16:05:56.517Z' format: date-time requestBodies: RQDeviceRegistration: content: application/json: schema: $ref: '#/components/schemas/RQDeviceRegistration' required: true RQTokenUpdate: content: application/json: schema: $ref: '#/components/schemas/RQTokenUpdate' required: true securitySchemes: oAuth2ClientCredentials: type: oauth2 description: 'See [Oauth2 API](https://developer.novopayment.com/api/authentication-method-and-encryption/oauth2-api) ' flows: clientCredentials: tokenUrl: https://sandbox-api.novopayment.com/oauth2/token scopes: {}