### List Subscribers Request Body Example Source: https://api.onsimapp.com/docs/api Example request body for listing subscribers, allowing filtering by state, recording status, and group. ```json { "state": "PROVISIONED", "is_recorded": true, "group": "CUSTOMERA" } ``` -------------------------------- ### Account - eSIM POST Request Source: https://api.onsimapp.com/docs/api/~endpoints Use this endpoint to retrieve an eSIM activation code and its installation status. It also allows for refreshing the code if the eSIM is not yet installed. The activation code can be used to generate a QR code for device installation. ```curl curl --request POST \ --url https://api.onsimapp.com/account/esim \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' { "i_account": "12345", "mpn": "447777777777", "iccid": "8944444444444444444", "refresh_code": 0 } ' ``` -------------------------------- ### Request Body for QR Code Generation Source: https://api.onsimapp.com/docs/api Example JSON payload for generating a QR code. Requires the eSIM activation code, which must start with 'LPA:1'. ```json { "esim_code": "LPA:XXXXXX" } ``` -------------------------------- ### Get Account Info Source: https://api.onsimapp.com/docs/api Retrieve account information, services, and bundle details for a given MPN. Requires an Authorization header. ```curl curl --request GET \ --url https://api.onsimapp.com/account/:mpn \ --header 'Authorization: ' ``` -------------------------------- ### Get eSIM Activation Code and Status Source: https://api.onsimapp.com/docs/api Retrieves the eSIM activation code and installation status. Can also refresh the code if not yet installed. Requires account, MPN, or ICCID. ```curl curl --request POST \ --url https://api.onsimapp.com/account/esim \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data \ '{ "i_account": "12345", "mpn": "447777777777", "iccid": "8944444444444444444", "refresh_code": 0 }' ``` -------------------------------- ### Provision Account (ONSIM UC) Request Source: https://api.onsimapp.com/docs/api Example cURL request to provision a new account and SIM on ONSIM. Requires MPN, group name, home location, user details, product ID, and mobile data. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/provision-onsim \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' { "mpn": "447777777777", "iccid": "8944530000000012345", "group_name": "CUSTOMER_A", "home_location": "GBR", "first_name": "John", "last_name": "Smith", "email": "j.smith@example.com", "product": 18, "mobile_data": "BACKGROUND-ONLY" } ' ``` -------------------------------- ### Account - Get Info Source: https://api.onsimapp.com/docs/api Retrieves account information, including services and bundle details, for a specified MPN. ```APIDOC ## GET /account/{mpn} ### Description Get account information, services and bundle ### Method GET ### Endpoint https://api.onsimapp.com/account/{mpn} ### Parameters #### Path Parameters - **mpn** (string) - required - mpn of account you want to retrieve info for #### Headers - **Authorization** (string) - required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Response #### Success Response (200) Info of Account - **account** (object[]) - Info Regarding the Account ``` -------------------------------- ### Provision Account (own UC) Request Source: https://api.onsimapp.com/docs/api Example cURL request to provision a subscriber account with own UC. Includes MPN, ICCID, PBX user, and password. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/provision \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' { "mpn": "447777777777", "iccid": "8944530000000012345", "pbx_user": "USER12345", "pbx_password": "1a2B3c4D" } ' ``` -------------------------------- ### Account - eSIM Source: https://api.onsimapp.com/docs/api Retrieves the eSIM activation code and status, with an option to refresh the code if not yet installed. The activation code can be used to generate a QR code for device installation. ```APIDOC ## Account - eSIM ### Description Returns the eSIM activation code and status for the supplied i_account, MPN or ICCID. Additionally allows eSIM activation code to be refreshed if not currently installed. The eSIM activation code can be used to generate a QR code for installation on an eSIM compatible device. ### Method POST ### Endpoint /account/esim ### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Parameters #### Request Body - **i_account** (string) - Optional - Your account/subscriber's unique ID. Example: 12345 - **mpn** (string) - Optional - Enter any of your SIM's numbers, mobile or landline, in e164 (i.e 44777...). Example: 447777777777 - **iccid** (string) - Optional - Your 19 digit SIM ID. Example: 8944444444444444444 - **refresh_code** (integer) - Optional - If set to 1 will refresh the activation code if eSIM has not yet been installed. Enum values: 0, 1. Example: 1. Default: 0 ### Response #### Success Response (200, 429) - **esim_code** (string) - The eSIM Activation Code. Example: LPA:XXXX - **esim_status** (string) - The eSIM Installation Status. Example: installed or ready to install - **enabled_on_device** (string) - Whether the installed eSIM is enabled or disabled on the device. Example: Y - **refresh_code** (string) - Whether the call to refresh the code has been actioned. Example: esim code refreshed or error ``` -------------------------------- ### Account - Generate QR POST Request Source: https://api.onsimapp.com/docs/api/~endpoints This endpoint generates a QR code image for eSIM installation by passing a valid eSIM activation code. The generated image is a presigned S3 URL with a 24-hour expiry. ```curl curl --request POST \ --url https://api.onsimapp.com/account/esim/generate \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' { "esim_code": "LPA:XXXXXX" } ' ``` -------------------------------- ### Request Body for eSIM Activation Source: https://api.onsimapp.com/docs/api Example JSON payload for requesting eSIM activation code and status. Includes optional fields for account, MPN, ICCID, and code refresh. ```json { "i_account": "12345", "mpn": "447777777777", "iccid": "8944444444444444444", "refresh_code": 0 } ``` -------------------------------- ### GET Porting Lookup by ID Source: https://api.onsimapp.com/docs/api/~endpoints Lookup the details of an active porting request using its ID. Requires an Authorization header. ```curl curl --request GET \ --url https://api.onsimapp.com/port/{id} \ --header 'Authorization: ' ``` -------------------------------- ### List Product Catalogue Source: https://api.onsimapp.com/docs/api Retrieves a list of available product bundles and SKUs for provisioning services. Requires an Authorization header. ```curl curl --request GET \ --url https://api.onsimapp.com/reseller/catalogue \ --header 'Authorization: ' ``` -------------------------------- ### Reseller - List Product Catalogue Source: https://api.onsimapp.com/docs/api Retrieves a list of available bundles and product SKUs for provisioning ONSIM services. ```APIDOC ## Reseller - List Product Catalogue ### Description Return a list of available bundles and product SKU's for provisioning ONSIM services. ### Method GET ### Endpoint /reseller/catalogue ### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Responses #### Success Response (200) - **catalogue** (object) - Required - List of Products and Bundles ``` -------------------------------- ### ResellerProvisionAccountOnsim Source: https://api.onsimapp.com/docs/api/~schemas Schema for provisioning a new ONSIM account for a reseller, including customer details and product selection. ```APIDOC ## ResellerProvisionAccountOnsim ### Description Schema for provisioning a new ONSIM account for a reseller, including customer details and product selection. ### Parameters #### Request Body - **mpn** (string) - Required - Number to be used as the account's primary mobile number (used for SMS, iMessage, etc). Example: 447777777777 - **group_name** (string) - Required - Customer Group ID. Example: CUSTOMER_A - **home_location** (string) - Required - Home Location of USER (GBR, USA, FRA, etc). Enum values: GBR, USA, FRA. Example: USA - **first_name** (string) - Required - Account's First Name. Example: John - **last_name** (string) - Required - Account's Last Name. Example: Smith - **email** (string) - Required - Account's Email Address. Example: j.smith@example.com - **product** (integer) - Required - ID of the product to provision. Example: 18 - **mobile_data** (string) - Required - Data Bundle to be applied to the subscriber. Enum values: BACKGROUND-ONLY, 2GB, 4GB, 10GB, 20GB, UNLIMITED. Example: 2GB - **iccid** (string) - Optional - 19 digit ICCID of physical SIM (remove the final digit from printed version). If ICCID is not supplied the next available eSIM will be used. Example: 8944530000000012345 ``` -------------------------------- ### Reseller - Provision Account (ONSIM UC) Source: https://api.onsimapp.com/docs/api/~endpoints Provisions a new account and SIM on ONSIM. ```APIDOC ## Reseller - Provision Account (ONSIM UC) ### Description Provisions a new account and SIM on ONSIM. ### Method POST ### Endpoint /reseller/provision-onsim ### Parameters #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. #### Request Body - **mpn** (string) - Required - Number to be used as the account's primary mobile number. - **group_name** (string) - Required - Customer Group ID. - **home_location** (string) - enum - Required - Home Location of USER (GBR, USA, FRA, etc). Enum values: GBR, USA, FRA. - **first_name** (string) - Required - Account's First Name. - **last_name** (string) - Required - Account's Last Name. - **email** (string) - Required - Account's Email Address. - **product** (integer) - Required - ID of the product to provision. - **mobile_data** (string) - enum - Required - Data Bundle to be applied to the subscriber. Enum values: BACKGROUND-ONLY, 2GB, 4GB, 10GB, 20GB, UNLIMITED. - **iccid** (string) - Optional - 19 digit ICCID of physical SIM. ### Request Example ```json { "mpn": "447777777777", "iccid": "8944530000000012345", "group_name": "CUSTOMER_A", "home_location": "GBR", "first_name": "John", "last_name": "Smith", "email": "j.smith@example.com", "product": 18, "mobile_data": "BACKGROUND-ONLY" } ``` ### Response #### Success Response (201429) - **esim_code** (string) - The eSIM Activation Code. - **iccid** (string) - The ICCID of the eSIM with ONSIM appended. - **pbx_password** (string) - The SIP Password for the provisioned user. #### Response Example ```json { "esim_code": "LPA:XXXX", "iccid": "ONSIM8944000000000123456", "pbx_password": "1a2B3c4D" } ``` ``` -------------------------------- ### Account - Generate QR Source: https://api.onsimapp.com/docs/api Generates a QR image by passing a valid eSIM activation code. The generated images are presigned S3 URLs with a 24-hour expiry. ```APIDOC ## Account - Generate QR ### Description Pass a valid eSIM activation code in order to generate a QR Image. Note: Images are presigned S3 URLs with an expiry of 24 hours. ### Method POST ### Endpoint /account/esim/generate ### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Parameters #### Request Body - **esim_code** (string) - Required - eSIM Activation Code. Pattern: `^LPA:1`. Example: LPA:XXXXXX ### Response #### Success Response (200) - (string) - Presigned QR code PNG URL. Example: https://onsimqrcodes.s3.amazonaws.com/UUID.png?X-Amz-Algorithm=XXXXX ``` -------------------------------- ### Reseller - Provision Account (own UC) Source: https://api.onsimapp.com/docs/api Provisions a new SIM card when using your own PBX. ```APIDOC ## Reseller - Provision Account (own UC) ### Description Provision a new SIM when using your own PBX. ### Method POST ### Endpoint /reseller/provision ### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Request Body - **mpn** (string) - Required - Number to be used as the account's primary mobile number (used for SMS, iMessage, etc) - **iccid** (string) - Optional - 19 digit ICCID of physical SIM (remove the final digit from printed version). If ICCID is not supplied the next available eSIM will be used. - **pbx_user** (string) - Optional - Account's SIP address/username - if not included in request it will default to 'ONSIM[ICCID]' - **pbx_password** (string) - Optional - Account's new SIP password - if not included in request we will create one and return this in the response ``` -------------------------------- ### Generate QR Code for eSIM Activation Source: https://api.onsimapp.com/docs/api Generates a presigned S3 URL for a QR code image using a valid eSIM activation code. The URL expires after 24 hours. ```curl curl --request POST \ --url https://api.onsimapp.com/account/esim/generate \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data \ '{ "esim_code": "LPA:XXXXXX" }' ``` -------------------------------- ### List Subscribers Request Source: https://api.onsimapp.com/docs/api/~endpoints Use this endpoint to retrieve a list of existing subscribers for the reseller. It requires a state parameter and can optionally filter by group or recording status. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/subscribers \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data '{ "state": "PROVISIONED", "is_recorded": true, "group": "CUSTOMERA" }' ``` -------------------------------- ### Porting - List All Ports Source: https://api.onsimapp.com/docs/api Returns a list of ports filtered by status. Valid state types include ALL, INITIAL, IN PROGRESS, FAILED, COMPLETE, CLOSED. ```APIDOC ## GET /port/all/{state} ### Description Returns a list of ports filtered by status. Valid state types = [ALL, INITIAL, IN PROGRESS, FAILED, COMPLETE, CLOSED]. ### Method GET ### Endpoint https://api.onsimapp.com/port/all/{state} ### Parameters #### Path Parameters - **state** (string) - Required - State to filter results. #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Response #### Success Response (200) List of Ports filtered by State - **portQueue** (object[]) - List of Ports filtered by State. Example: `{"port":[{"trID":"1","number":"447777777771","orderDate":"2025-01-01","PAC":"ABC12345","portinDate":"2025-01-02","portinNumber":"447777777772","resellerId":"1","status":"COMPLETE","type":"PORT-IN","updatedDate":"Jan 2, 2025 1:20:30 PM"}]}` ``` -------------------------------- ### ResellerProvisionAccount Source: https://api.onsimapp.com/docs/api/~schemas Schema for provisioning a new account for a reseller. Supports specifying MPN, ICCID, PBX user, and password. ```APIDOC ## ResellerProvisionAccount ### Description Schema for provisioning a new account for a reseller. Supports specifying MPN, ICCID, PBX user, and password. ### Parameters #### Request Body - **mpn** (string) - Required - Number to be used as the account's primary mobile number (used for SMS, iMessage, etc). Example: 447777777777 - **iccid** (string) - Optional - 19 digit ICCID of physical SIM (remove the final digit from printed version). If ICCID is not supplied the next available eSIM will be used. Example: 8944530000000012345 - **pbx_user** (string) - Optional - Account's SIP address/username - if not included in request it will default to 'ONSIM[ICCID]'. Example: USER12345 - **pbx_password** (string) - Optional - Account's new SIP password - if not included in request we will create one and return this in the response. Example: 1a2B3c4D ``` -------------------------------- ### List SIMs by State and Type Source: https://api.onsimapp.com/docs/api Retrieve a list of reseller SIMs filtered by their state and type. Requires an Authorization header. ```curl curl --request GET \ --url https://api.onsimapp.com/sims/:state/:type \ --header 'Authorization: ' ``` -------------------------------- ### Reseller - Provision Account (own UC) Source: https://api.onsimapp.com/docs/api Provisions a new subscriber account with an eSIM for the reseller's own Unified Communications platform. ```APIDOC ## POST /reseller/provision ### Description Provisions a new subscriber account with an eSIM for the reseller's own Unified Communications platform. ### Method POST ### Endpoint https://api.onsimapp.com/reseller/provision ### Parameters #### Request Body - **mpn** (string) - Required - Mobile number to be used as the account's primary mobile number. - **iccid** (string) - Required - 19 digit ICCID of physical SIM. - **pbx_user** (string) - Required - The username for the PBX. - **pbx_password** (string) - Required - The password for the PBX. ### Request Example ```json { "mpn": "447777777777", "iccid": "8944530000000012345", "pbx_user": "USER12345", "pbx_password": "1a2B3c4D" } ``` ### Response #### Success Response (201429) - **esim_code** (string) - The eSIM Activation Code. - **iccid** (string) - The ICCID of the eSIM with ONSIM appended at the beginning - this is the SIP Address/Username. - **pbx_password** (string) - This is the SIP Password for the provisioned user. ``` -------------------------------- ### Provision Account (own UC) Source: https://api.onsimapp.com/docs/api Provisions a new SIM account when using your own PBX. Requires an Authorization header and a JSON request body with account details. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/provision \ --header 'Authorization: ' ``` -------------------------------- ### Reseller - Provision Account (ONSIM UC) Source: https://api.onsimapp.com/docs/api Provisions a new account and SIM on ONSIM for the reseller's Unified Communications platform. ```APIDOC ## POST /reseller/provision-onsim ### Description Provisions a new account and SIM on ONSIM for the reseller's Unified Communications platform. ### Method POST ### Endpoint https://api.onsimapp.com/reseller/provision-onsim ### Parameters #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. #### Request Body - **mpn** (string) - Required - Number to be used as the account's primary mobile number (used for SMS, iMessage, etc). - **group_name** (string) - Required - Customer Group ID. - **home_location** (string) - Required - Home Location of USER (GBR, USA, FRA, etc). Enum values: GBR, USA, FRA. - **first_name** (string) - Required - Account's First Name. - **last_name** (string) - Required - Account's Last Name. - **email** (string) - Required - Account's Email Address. - **product** (integer) - Required - ID of the product to provision. - **mobile_data** (string) - Required - Data Bundle to be applied to the subscriber. Enum values: BACKGROUND-ONLY, 2GB, 4GB, 10GB, 20GB, UNLIMITED. - **iccid** (string) - Optional - 19 digit ICCID of physical SIM (remove the final digit from printed version). If ICCID is not supplied the next available eSIM will be used. ### Response #### Success Response (201429) - **esim_code** (string) - The eSIM Activation Code. - **iccid** (string) - The ICCID of the eSIM with ONSIM appended at the beginning - this is the SIP Address/Username. - **pbx_password** (string) - This is the SIP Password for the provisioned user. ``` -------------------------------- ### Reseller - List Subscribers Source: https://api.onsimapp.com/docs/api Returns a list of existing Subscribers for the Reseller. ```APIDOC ## POST /reseller/subscribers ### Description Returns a list of existing Subscribers for the Reseller. ### Method POST ### Endpoint https://api.onsimapp.com/reseller/subscribers ### Parameters #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. #### Request Body - **state** (string) - Required - Subscriber status/state. Must be 'PROVISIONED'. Enum values: PROVISIONED. - **is_recorded** (boolean) - Optional - Return the recording state of all subscribers. - **group** (string) - Optional - Optionally filter by group. ``` -------------------------------- ### Add Group Source: https://api.onsimapp.com/docs/api/~endpoints Use this endpoint to add a new customer group. It requires a name, address, and home location, with optional fields for additional address details and a description. An Authorization header and JSON Content-Type are required. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/groups \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data \ '{ "name": "ExampleCustomer", "address_line_1": "Example Building", "address_line_2": "18 Example Street", "city": "Example City", "country": "Example Country", "post_code": "SW1A 0AA", "home_location": "GBR", "description": "Example Group for testing API" }' ``` ```json { "name": "ExampleCustomer", "address_line_1": "Example Building", "address_line_2": "18 Example Street", "city": "Example City", "country": "Example Country", "post_code": "SW1A 0AA", "home_location": "GBR", "description": "Example Group for testing API" } ``` -------------------------------- ### Create Subscriber Source: https://api.onsimapp.com/docs/api Use this endpoint to create a new subscriber. Requires authentication and specifies subscriber state, recording status, and group. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/subscribers \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data '\ { "state": "PROVISIONED", "is_recorded": true, "group": "CUSTOMERA" } ' ``` -------------------------------- ### List All Ports by State Source: https://api.onsimapp.com/docs/api Retrieve a list of ports filtered by their status. Requires an Authorization header and a valid state parameter. ```curl curl --request GET \ --url https://api.onsimapp.com/port/all/:state \ --header 'Authorization: ' ``` -------------------------------- ### Provision Account (ONSIM UC) Request Body Source: https://api.onsimapp.com/docs/api JSON structure for the request body when provisioning a new account and SIM on ONSIM. ```json { "mpn": "447777777777", "iccid": "8944530000000012345", "group_name": "CUSTOMER_A", "home_location": "GBR", "first_name": "John", "last_name": "Smith", "email": "j.smith@example.com", "product": 18, "mobile_data": "BACKGROUND-ONLY" } ``` -------------------------------- ### Update Account Bundle Source: https://api.onsimapp.com/docs/api Update the bundle associated with an account using its MPN. Supports BASE (no data) or UNLIMITED (data) bundles. Requires an Authorization header. ```curl curl --request POST \ --url https://api.onsimapp.com/account/:mpn/bundle/:bundle \ --header 'Authorization: ' ``` -------------------------------- ### Lookup Port Details Source: https://api.onsimapp.com/docs/api Retrieves the status and details of a port request using the port ID. Requires an Authorization header. ```curl curl --request GET \ --url https://api.onsimapp.com/port/:id \ --header 'Authorization: ' ``` -------------------------------- ### Cease Account Source: https://api.onsimapp.com/docs/api/~endpoints Use this endpoint to irrevocably cease a SIM and its associated account. This action cannot be reversed. Ensure you use this with extreme caution. ```curl curl --request DELETE \ --url https://api.onsimapp.com/account \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' { "iccid": "8944530000000012345" } ' ``` -------------------------------- ### POST Reseller Subscribers Source: https://api.onsimapp.com/docs/api/~endpoints Use this endpoint to create or list subscribers for a reseller. It requires an Authorization header and accepts a JSON payload with subscriber details. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/subscribers \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data '\ { "state": "PROVISIONED", "is_recorded": true, "group": "CUSTOMERA" } ' ``` ```json { "state": "PROVISIONED", "is_recorded": true, "group": "CUSTOMERA" } ``` -------------------------------- ### EsimQuery Source: https://api.onsimapp.com/docs/api/~schemas Schema for querying Esim information. Allows filtering by account, MPN, ICCID, and refreshing activation codes. ```APIDOC ## EsimQuery ### Description Schema for querying Esim information. Allows filtering by account, MPN, ICCID, and refreshing activation codes. ### Parameters #### Query Parameters - **i_account** (string) - Optional - Your account/subscriber's unique ID. Example: 12345 - **mpn** (string) - Optional - Enter any of your SIM's numbers, mobile or landline, in e164 (i.e 44777...). Example: 447777777777 - **iccid** (string) - Optional - Your 19 digit SIM ID. Example: 8944444444444444444 - **refresh_code** (integer) - Optional - If set to 1 will refresh the activation code if eSIM has not yet been installed. Enum values: 0, 1. Example: 1. Default: 0 ``` -------------------------------- ### Reseller - Add Group Source: https://api.onsimapp.com/docs/api Adds a new group or customer to the reseller account. ```APIDOC ## Reseller - Add Group ### Description Adds a new Group/Customer. ### Method POST ### Endpoint /reseller/groups ### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Request Body - **name** (string) - Required - Group Name. ((Must be unique, length 3-45 characters ('a-z' 'A-Z' '0-9' '_' '-'), MUST start with an alphanumeric character, MUST contain at least one Alphabetical character & No spaces or other characters)) - **address_line_1** (string) - Required - Line 1 of customer address - **home_location** (string) - Required - A list of three character country codes (ISO-3166) for which the Group's service is primarily homed, comma separated when more than one location: current values limited to "GBR" or "USA" or a list of the two - **address_line_2** (string) - Optional - Line 2 of customer address - **city** (string) - Optional - Customer City - **country** (string) - Optional - Customer Country - **post_code** (string) - Optional - Customer Post Code - **description** (string) - Optional - Description of the customer/group ### Request Example ```json { "name": "ExampleCustomer", "address_line_1": "Example Building", "address_line_2": "18 Example Street", "city": "Example City", "country": "Example Country", "post_code": "SW1A 0AA", "home_location": "GBR", "description": "Example Group for testing API" } ``` ### Responses #### Success Response (200) - **New Group Successfully Added** ``` -------------------------------- ### Lookup Port Details Source: https://api.onsimapp.com/docs/api Retrieves the details of a specific port using its ID. This includes information such as the port number, dates, status, and associated reseller ID. ```APIDOC ## GET /port/{id} ### Description Retrieves the details of a specific port using its ID. ### Method GET ### Endpoint /port/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The ID of the port to look up. #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Response #### Success Response (200) - **port** (object) - Port Details - `trID` (string) - `number` (string) - `orderDate` (string) - `PAC` (string) - `portinDate` (string) - `portinNumber` (string) - `resellerId` (string) - `status` (string) - `type` (string) - `updatedDate` (string) - `validUntil` (string) ### Response Example ```json { "trID": "1", "number": "447777777771", "orderDate": "2025-01-01", "PAC": "ABC12345", "portinDate": "2025-01-02", "portinNumber": "447777777772", "resellerId": "1", "status": "COMPLETE", "type": "PORT-IN", "updatedDate": "Jan 2, 2025 1:20:30 PM", "validUntil": "2025-01-30" } ``` ``` -------------------------------- ### List Reseller Groups Source: https://api.onsimapp.com/docs/api/~endpoints Retrieve a list of all reseller groups. Requires an Authorization header for authentication. ```curl GET https://api.onsimapp.com /reseller/groups ``` -------------------------------- ### Account - Update Bundle Source: https://api.onsimapp.com/docs/api Updates the bundle associated with an account. Supports 'BASE' for no data and 'UNLIMITED' for data bundles. ```APIDOC ## POST /account/{mpn}/bundle/{bundle} ### Description Use this method to update the bundle associated to the Account use either BASE (no data) or UNLIMITED (data) ### Method POST ### Endpoint https://api.onsimapp.com/account/{mpn}/bundle/{bundle} ### Parameters #### Path Parameters - **mpn** (string) - required - mpn of account you want to update - **bundle** (string) - required - Bundle SKU #### Headers - **Authorization** (string) - required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Response #### Success Response (200) Bundle Successfully Updated No data returned ``` -------------------------------- ### List Reseller Groups Source: https://api.onsimapp.com/docs/api Retrieves a list of all reseller groups. Requires API key authentication. ```curl curl --request GET \ --url https://api.onsimapp.com/reseller/groups \ --header 'Authorization: ' ``` -------------------------------- ### Reseller - List Groups Source: https://api.onsimapp.com/docs/api Retrieves a list of all reseller groups. ```APIDOC ## GET /reseller/groups ### Description Retrieves a list of all reseller groups. ### Method GET ### Endpoint /reseller/groups ### Response #### Success Response (200) List of all reseller groups No data returned ``` -------------------------------- ### Manage Account Recording Source: https://api.onsimapp.com/docs/api Enable or disable call and SMS recording for a specified account. Use 'ON' or 'OFF' for voice_recording and sms_recording. Use with caution, especially in regulated industries, as disabling recording is irreversible. ```curl curl --request POST \ --url https://api.onsimapp.com/account/:mpn/recording \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data \ '{ "voice_recording": "ON", "sms_recording": "ON" }' ``` -------------------------------- ### Cease Account Source: https://api.onsimapp.com/docs/api Irrevocably cease a SIM and its associated account. Use with extreme caution as this action cannot be reversed. Requires an Authorization header and a JSON body containing the ICCID. ```curl curl --request DELETE \ --url https://api.onsimapp.com/account \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data \ '{ "iccid": "8944530000000012345" }' ``` -------------------------------- ### Account - Update Mobile Settings Source: https://api.onsimapp.com/docs/api Updates the mobile settings for a given account, including SIP details, personal information, and mobile service enablement. ```APIDOC ## Account - Update Mobile Settings ### Description Update Mobile Settings for Account ### Method POST ### Endpoint /account/pbxinfo/{mpn} ### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Parameters #### Path Parameters - **mpn** (string) - Required - mpn of account you are updating #### Request Body - **mpn** (string) - Optional - Account's new mpn. Example: 447777777777 - **pbx_user** (string) - Optional - Account's new SIP address/username. Example: USER12345 - **pbx_password** (string) - Optional - Account's new SIP password. Example: PA$$W0RD! - **first_name** (string) - Optional - Account's new First Name. Example: John - **last_name** (string) - Optional - Account's new Last Name. Example: Smith - **email** (string) - Optional - Account's new Email Address. Example: j.smith@example.com - **mobile_data** (string) - Optional - Use a value of ON or OFF to enable or disable Mobile Data. Enum values: ON, OFF. Example: ON. Default: ON - **mobile_voice** (string) - Optional - Use a value of ON or OFF to enable or disable Mobile Voice. Enum values: ON, OFF. Example: ON. Default: ON - **mobile_sms** (string) - Optional - Use a value of ON or OFF to enable or disable Mobile SMS. Enum values: ON, OFF. Example: ON. Default: ON - **mobile_hotspot** (string) - Optional - Use a value of ON or OFF to enable or disable Mobile Hotspot/Tethering of mobile data. Enum values: ON, OFF. Example: ON. Default: OFF ``` -------------------------------- ### Account - Cease Account Source: https://api.onsimapp.com/docs/api Irrevocably ceases a SIM and its associated account. Use with extreme caution as this action cannot be reversed. ```APIDOC ## DELETE /account ### Description Cease Account. WARNING:: Please use with caution this will irrevocably cease the SIM and Account - it can not be reversed ### Method DELETE ### Endpoint https://api.onsimapp.com/account ### Parameters #### Headers - **Authorization** (string) - required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. #### Request Body - **iccid** (string) - required - SIM ICCID ### Request Example ```json { "iccid": "8944530000000012345" } ``` ### Response #### Success Response (200) Account Successfully Ceased No data returned ``` -------------------------------- ### SIMs - List all sims Source: https://api.onsimapp.com/docs/api Retrieves a list of SIMs filtered by their state and type. ```APIDOC ## GET /sims/{state}/{type} ### Description Retrieves a list of SIMs filtered by their state and type. ### Method GET ### Endpoint https://api.onsimapp.com/sims/{state}/{type} ### Parameters #### Path Parameters - **state** (string) - Required - State of SIM - either 'ACTIVE' or 'RESERVED'. - **type** (string) - Required - Type of SIM - either 'ALL', 'eSIM' or 'pSIM'. #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Response #### Success Response (200) List of sims filtered by state and type No data returned ``` -------------------------------- ### Add Group Source: https://api.onsimapp.com/docs/api Adds a new group (customer) to the reseller account. Requires Authorization and Content-Type headers, and a JSON request body with group details. ```curl curl --request POST \ --url https://api.onsimapp.com/reseller/groups \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' \ { "name": "ExampleCustomer", "address_line_1": "Example Building", "address_line_2": "18 Example Street", "city": "Example City", "country": "Example Country", "post_code": "SW1A 0AA", "home_location": "GBR", "description": "Example Group for testing API" }' ``` ```json { "name": "ExampleCustomer", "address_line_1": "Example Building", "address_line_2": "18 Example Street", "city": "Example City", "country": "Example Country", "post_code": "SW1A 0AA", "home_location": "GBR", "description": "Example Group for testing API" } ``` -------------------------------- ### Reseller - List Groups Source: https://api.onsimapp.com/docs/api Retrieves a list of all groups associated with the reseller account. ```APIDOC ## Reseller - List Groups ### Description Retrieves a list of groups. ### Method GET ### Endpoint /reseller/groups ### Headers - **Authorization** (string) - Required - The Authorization header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ### Responses #### Success Response (200) - **List of groups** ### Request Example ```curl curl --request GET \ --url https://api.onsimapp.com/reseller/groups \ --header 'Authorization: ' ``` ``` -------------------------------- ### Manage Account Recording Source: https://api.onsimapp.com/docs/api/~endpoints Enable or disable call and SMS recording for a specified account MPN. Use 'ON' or 'OFF' for voice_recording and sms_recording. Use with caution, especially in regulated industries, as disabling recording stops data capture immediately and retroactively. ```curl curl --request POST \ --url https://api.onsimapp.com/account/:mpn/recording \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data ' { "voice_recording": "ON", "sms_recording": "ON" } ' ``` -------------------------------- ### Provision Account (own UC) Request Body Source: https://api.onsimapp.com/docs/api JSON structure for the request body when provisioning a subscriber account with own UC. ```json { "mpn": "447777777777", "iccid": "8944530000000012345", "pbx_user": "USER12345", "pbx_password": "1a2B3c4D" } ``` -------------------------------- ### Reseller - List Subscribers Source: https://api.onsimapp.com/docs/api Lists subscribers associated with a reseller account. Supports filtering by state, recording status, and group. ```APIDOC ## POST /reseller/subscribers ### Description Lists subscribers associated with a reseller account. Supports filtering by state, recording status, and group. ### Method POST ### Endpoint https://api.onsimapp.com/reseller/subscribers ### Parameters #### Request Body - **state** (string) - Optional - State of the subscriber (e.g., "PROVISIONED"). - **is_recorded** (boolean) - Optional - Whether the subscriber's data is recorded. - **group** (string) - Optional - The group the subscriber belongs to. ### Request Example ```json { "state": "PROVISIONED", "is_recorded": true, "group": "CUSTOMERA" } ``` ### Response #### Success Response (200) JSON List of your Subscribers No data returned ``` -------------------------------- ### Update Account Mobile Settings Source: https://api.onsimapp.com/docs/api/~endpoints Use this endpoint to update mobile settings for an account. Requires account MPN and user credentials. ```curl curl --request POST \ --url https://api.onsimapp.com/account/pbxinfo/:mpn \ --header 'Authorization: ' \ --header 'Content-Type: application/json' \ --data \ '{ "mpn": "447777777777", "pbx_user": "USER12345", "pbx_password": "PA$$W0RD!", "first_name": "John", "last_name": "Smith", "email": "j.smith@example.com", "mobile_data": "ON", "mobile_voice": "ON", "mobile_sms": "ON", "mobile_hotspot": "ON" }' ``` -------------------------------- ### Numbers - Add a number Source: https://api.onsimapp.com/docs/api Adds a new number to the system. ```APIDOC ## POST /numbers/{mpn} ### Description Adds a new number to the system. ### Method POST ### Endpoint /numbers/{mpn} ### Parameters #### Path Parameters - **mpn** (string) - Required - The mobile phone number to add. ### Response #### Success Response (201) Number added No data returned ``` -------------------------------- ### Numbers - List all numbers Source: https://api.onsimapp.com/docs/api Retrieves a list of reseller numbers, filtered by their state (ACTIVE or RESERVED). ```APIDOC ## GET /numbers/{state} ### Description Retrieves a list of reseller numbers, filtered by their state (ACTIVE or RESERVED). ### Method GET ### Endpoint /numbers/{state} ### Parameters #### Path Parameters - **state** (string) - Required - State of mpn - either 'ACTIVE' or 'RESERVED'. ### Response #### Success Response (200) List of numbers filtered by state No data returned ``` -------------------------------- ### Porting - Lookup Port Source: https://api.onsimapp.com/docs/api Looks up the details of an active port using its ID. ```APIDOC ## GET /port/{id} ### Description Looks up the details of an active port using its ID. ### Method GET ### Endpoint https://api.onsimapp.com/port/{id} ### Parameters #### Path Parameters - **id** (string) - Required - ID of the port to query. #### Headers - **Authorization** (string) - Required - The `Authorization` header is used to authenticate with the API using your API key. Value is of the format `Bearer YOUR_KEY_HERE`. ``` -------------------------------- ### Numbers - Add a number Source: https://api.onsimapp.com/docs/api/~endpoints Adds a new number to the reseller's inventory. ```APIDOC ## POST /numbers/{mpn} ### Description Adds a number. ### Method POST ### Endpoint /numbers/{mpn} ### Parameters #### Path Parameters - **mpn** (string) - Required - mpn to add. ### Response #### Success Response (201) Number added No data returned ```