UNITE Partner API (1.0.0)

Download OpenAPI specification:Download

This is a Sim Local UNITE Partner API OpenAPI specification.

SIM

SIM specific operations

Fulfilment completed Webhook

Webhook callback when fulfilment has been completed. Please contact your Sim Local contact to configure webhooks in the UNITE platform for you.

Authorizations:
ApiKey
Request Body schema: application/json
order_id
required
string

Unique order ID.

status
required
string (order_status)
Enum: "CREATED" "PURCHASED" "PROCESSING_OBTAINING_ACTIVATION_CODE" "PROCESSING_WAITING_NETWORK_ACTIVATION" "PROCESSING_APPLYING_BUNDLE" "COMPLETED" "FAILED" "REFUNDED"

Order status.

Responses

Request samples

Content type
application/json
{
  • "order_id": "00278971-4108-4e50-ac1b-dfd14cc194f4",
  • "status": "COMPLETED"
}

Get destinations

Returns a list of destinations that UNITE platform supports.

Authorizations:
oauth2
header Parameters
Accept-Language
string

Language code for field translation. If you have not set the header, en will be used as a default value.

Responses

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Get product offerings

Returns available SIM product offerings.

Authorizations:
oauth2
query Parameters
ssn
string

If specified, only product offerings that could be applied to a physical SIM with given SSN (sometimes also called IccID) will be returned. If omitted, response will include all product offerings that can be applied to any available eSIM (on-demand or in-stock).

destination
string

If specified, only product offerings for given destination (specified by its alias) will be returned. If omitted, product offerings for all destinations will be returned.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get faulty reasons

Returns a list of faulty reasons that UNITE platform supports.

Authorizations:
oauth2

Responses

Response samples

Content type
application/json
[
  • "FAULTY_SIM",
  • "PHONE_IS_LOCKED",
  • "WRONG_PRODUCT_SELECTED",
  • "BUNDLE_DID_NOT_APPLY",
  • "NO_SERVICE",
  • "CUSTOMER_CHANGED_MIND",
  • "OTHER"
]

Create order

Creates a new UNITE order with a single order item.

Authorizations:
oauth2
query Parameters
synchronous
boolean

Determines if a call to this endpoint should wait until order creation completely succeeds of fails before returning. Defaults to false which returns immediately with order status usually set to some intermediate status like PURCHASED. In this case, caller is supposed to either have Fulfilment completed webhook configured or to regularly poll the order (either by Get order by ID or Search order(s) by external reference) to get an information when order if completed (or have failed). Setting this parameter to true will force the server to wait until either order is fully processed or timeout occurs before returning a response. Although simpler, this approach may still sometime result in responses that return uncompleted orders, which happens in cases when order processing takes more time than any configured timeout (50 seconds by default, but can be increased if needed). Still, synchronous flow may be used to simplify the majority of cases when an order is processed under the configured timeout with rest of the edge cases being covered by already described ways of subsequent polling until order ends up in one of the final statuses.

Request Body schema: application/json
required
object (order_item_request)

Contains information about a UNITE order item to be created.

external_reference
string

Optional unique ID you can pass with order, and search created order with this external_reference.

object
object
locale
required
string

Local code code used for order responses. Based on ISO 639-1 codes.

contact_name
string

Optional user contact name

contact_email
string

Optional user that gets email notifications about order creation and fulfillment.

Responses

Request samples

Content type
application/json
{
  • "item": {
    },
  • "external_reference": "51f9fb09-a4a6-460b-8c46-42e254f5fbd1",
  • "payment_details": {
    },
  • "kyc_details": {
    },
  • "locale": "en",
  • "contact_name": "Tom",
  • "contact_email": "tom@mycompany.com"
}

Response samples

Content type
application/json
{
  • "id": "00278971-4108-4e50-ac1b-dfd14cc194f4",
  • "order_no": "opyq6-e1ga9",
  • "external_reference": "51f9fb09-a4a6-460b-8c46-42e254f5fbd1",
  • "status": "COMPLETED",
  • "item": {
    },
  • "payment_details": {
    },
  • "kyc_details": {
    },
  • "locale": "en",
  • "contact_name": "Tom",
  • "contact_email": "tom@mycompany.com"
}

Search order(s) by external reference

Return the order with the given external reference.

Authorizations:
oauth2
query Parameters
external_reference
required
string
Example: external_reference=51f9fb09-a4a6-460b-8c46-42e254f5fbd1

Orders external reference.

Responses

Response samples

Content type
application/json
{
  • "content": [
    ],
  • "totalPages": 1,
  • "totalElements": 1,
  • "pageable": {
    },
  • "last": true,
  • "total_pages": 1,
  • "sort": {
    },
  • "first": true,
  • "number_of_elements": 1,
  • "empty": false
}

Get order by ID

Returns the order with the given ID.

Authorizations:
oauth2
path Parameters
order_id
required
string
Example: 00278971-4108-4e50-ac1b-dfd14cc194f4

Generated order ID.

Responses

Response samples

Content type
application/json
{
  • "id": "00278971-4108-4e50-ac1b-dfd14cc194f4",
  • "order_no": "opyq6-e1ga9",
  • "external_reference": "51f9fb09-a4a6-460b-8c46-42e254f5fbd1",
  • "status": "COMPLETED",
  • "item": {
    },
  • "payment_details": {
    },
  • "kyc_details": {
    },
  • "locale": "en",
  • "contact_name": "Tom",
  • "contact_email": "tom@mycompany.com"
}

Report faulty order

Marks an order as faulty. To get the list of possible reasons why order may be reported as faulty, see the response from Get faulty reasons. Order may be reported as faulty only when it's in COMPLETED status.

Authorizations:
oauth2
path Parameters
order_id
required
string
Example: 00278971-4108-4e50-ac1b-dfd14cc194f4

Order ID.

query Parameters
reason
required
string
Example: reason=FAULTY_SIM

Reason why this order is being reported as faulty. Should be one of the reasons returned by Get faulty reasons.

note
string
Example: note=SIM card is physically damaged

Free form text to save alongside why order was reported as faulty.

Responses

Response samples

Content type
application/json
{
  • "id": "00278971-4108-4e50-ac1b-dfd14cc194f4",
  • "order_no": "opyq6-e1ga9",
  • "external_reference": "51f9fb09-a4a6-460b-8c46-42e254f5fbd1",
  • "status": "COMPLETED",
  • "item": {
    },
  • "payment_details": {
    },
  • "kyc_details": {
    },
  • "locale": "en",
  • "contact_name": "Tom",
  • "contact_email": "tom@mycompany.com"
}