4.0 Subscribers
This is the reference documentation for the Subscribers endpoints.
Note
You can generate an example call for each endpoint using the Try It Out button.
This call will not trigger any action on your account unless you add your authentication token to it.
components:
schemas:
Parent:
properties:
physicalId:
type: string
description: The physical ID of the parent subscriber.
isEnabledOnParent:
type: boolean
description: Whether the subscriber is the currently enabled profile on the parent.
type: object
required:
- physicalId
- isEnabledOnParent
description: The parent of this subscriber. If this is an eUICC profile the parent is the subscriber it is attached to.
RelatedItems:
properties:
parent:
$ref: '#/components/schemas/Parent'
profiles:
items:
$ref: '#/components/schemas/SubscriberResponse'
type: array
description: A list of profiles which are attached to this subscriber.
type: object
description: 'Information about related items, such as profiles or parent subscribers.'
example: '{parent: {}, profiles: [{ physicalId: 1234, isEnabled: false }]}'
NetworkState:
properties:
isTransferring:
type: boolean
example: 'true'
description: Indicates whether the subscriber is currently transferring data.
isOnline:
type: boolean
example: 'true'
description: Indicates whether the subscriber is currently online.
type: object
required:
- isTransferring
- isOnline
SubscriberResponse:
properties:
physicalId:
type: string
example: '8944000000000000001'
description: <p>The <em>physicalId</em> value depends on the subscriber type:</p><ul><li><em>Cellular</em> - the ICCID</li><li><em>Non-IP</em> - the Device EUI</li><li><em>Satellite</em> - the IMEI</li></ul>
subscriberId:
type: string
example: '447000000001'
description: <p>The <em>subscriberId</em> value depends on the subscriber type:</p><ul><li><em>Cellular</em> - the MSISDN</li><li><em>Non-IP</em> - the Device EUI</li><li><em>Satellite</em> - the Subscription ID</li></ul>
dataNumber:
example: '9999'
description: |2-
If the subscriber uses Circuit Switched Data (CSD), this field displays its data number.
If the subscriber does not use CSD, this field is null.
type: string
nullable: true
imsi:
type: string
example: '234150000000001'
description: The International Mobile Subscriber Identity number.
nickname:
type: string
example: Temperature Monitor
description: The subscriber nickname.
operatorName:
type: string
example: Operator One
description: The name of the operator the subscriber is associated with.
operatorCode:
type: string
example: op1
description: The unique operator identifier.
tariffName:
type: string
example: TARIFF ABC
description: The name of tariff the subscriber is on.
lineRental:
type: integer
example: '1000'
description: The tariff recurring line rental fee in pence (or the smallest unit of the tariff currency).
connectionDate:
pattern: '^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\.[0-9]+)?(Z)?'
type: string
example: '2018-02-11T10:33:30.000Z'
description: 'The contract start date, or date and time.'
expiryDate:
pattern: '^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\.[0-9]+)?(Z)?'
type: string
example: '2020-02-11T10:33:30.000Z'
description: 'The contract end date, or date and time.'
contractLength:
type: integer
example: '24'
description: The tariff contract length, in months.
isBarred:
type: boolean
example: false
description: |-
<p>Indicates if the subscriber is barred.</p><ul><li><em>True</em> - the subscriber is barred.</li><li><em>False</em> - the subscriber is not barred.</li></ul>
isActive:
type: boolean
example: true
description: <p>Indicates if the subscriber is active.</p><ul><li><em>True</em> - the subscriber is active.</li><li><em>False</em> - the subscriber is not active.</li></ul>
terminateDate:
pattern: '^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\.[0-9]+)?(Z)?'
example: '2018-12-11T10:33:30.000Z'
description: 'The date, or the date and time, at which the subscriber''s contract was terminated. This is null for active subscribers.'
type: string
nullable: true
groupId:
type: integer
example: 99
description: 'If the subscriber is a member of a group, this field displays the unique group identifier. This is null for subscribers that are not in a group.'
subscriberType:
type: string
example: virtual
description: Indicates whether the subscriber is physical or virtual.
networkState:
$ref: '#/components/schemas/NetworkState'
eid:
type: string
example: '39049987000001000000004406147560'
description: 'If the subscriber is an eUICC SIM, this field displays its EID.'
dataUsage:
type: number
example: '20480'
description: The total amount of data the subscriber has sent and received during the current billing period, in bytes.
smdpProvider:
type: string
example: Provider One
description: 'If the subscriber is an eUICC SIM or eSIM profile, this field displays its SMDP provider.'
related:
$ref: '#/components/schemas/RelatedItems'
type: object
required:
- physicalId
- subscriberId
- dataNumber
- imsi
- nickname
- operatorName
- operatorCode
- tariffName
- lineRental
- connectionDate
- expiryDate
- contractLength
- isBarred
- isActive
- terminateDate
- groupId
- subscriberType
- networkState
PatchBody:
properties:
nickname:
maxLength: 256
type: string
minLength: 0
example: SubscriberNickname1
description: The subscriber nickname that you want to assign.
type: object
required:
- nickname
info:
title: Subscribers
version: 4.0.0
description: '<p>Retrieves information about your account subscribers.</p><p>For a specific subscriber or for all subscribers, you can use these endpoints to retrieve the:</p><ul><li>Operator and tariff details</li><li>Contract start and end dates</li><li>Activation status</li><li>Network state</li><li>Unique identifier, such as ICCID or IMSI</li><li>Subscriber type</li><li>Subscriber group (if assigned)</li><li>Data usage</li></ul><p>You can also update a subscriber nickname.</p><p>The word <em>subscriber</em> refers to any physical device or virtual profile that is subscribed to the network. This includes cellular devices, non-IP devices, satellite devices and eSIM profiles.</p>'
openapi: 3.0.0
paths:
'/subscribers/{physicalId}':
get:
operationId: SubscriberController.getOneSubscriber
parameters:
- in: path
name: physicalId
description: The unique subscriber identifier.
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
properties:
content:
type: object
$ref: '#/components/schemas/SubscriberResponse'
description: Success - returns information about the subscriber.
'404':
content:
application/json:
schema:
type: object
properties:
error:
properties:
code:
type: string
message:
type: string
type: object
description: Error - resource not found.
summary: Returns information for the specified subscriber.
tags:
- Subscribers
description: '<p>You must provide the subscriber''s <em>physicalId</em> as a parameter in the request. This value varies depending on the subscriber type:</p><ul><li><em>Cellular</em> - use the ICCID</li><li><em>Non-IP</em> - use the Device EUI</li><li><em>Satellite</em> - use the IMEI</li></ul><p><br> To use this endpoint, your user account must have the <strong>View Subscriber</strong> permission enabled.'
patch:
operationId: SubscriberController.editNickNameOfSubscriber
parameters:
- in: path
name: physicalId
description: The unique subscriber identifier.
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchBody'
description: PatchBody
required: false
responses:
'200':
content:
application/json:
schema:
type: object
properties:
content:
type: object
$ref: '#/components/schemas/SubscriberResponse'
description: Success - the subscriber nickname was updated successfully.
'400':
content:
application/json:
schema:
type: object
properties:
error:
properties:
code:
type: string
message:
type: string
type: object
description: Error - invalid request.
'404':
content:
application/json:
schema:
type: object
properties:
error:
properties:
code:
type: string
message:
type: string
type: object
description: Error - resource not found.
summary: Updates the nickname for the specified subscriber.
tags:
- Subscribers
description: '<p>You must provide the subscriber''s <em>physicalId</em> as a parameter in the request. This value varies depending on the subscriber type:</p><ul><li><em>Cellular</em> - use the ICCID</li><li><em>Non-IP</em> - use the Device EUI</li><li><em>Satellite</em> - use the IMEI</li></ul><p>You must also provide the subscriber nickname in the request body.</p><p><br>To use this endpoint, your user account must have the <strong>View Subscriber</strong> and <strong>Update the Details of a Subscriber</strong> permissions enabled.</p>'
/subscribers:
get:
operationId: SubscriberController.getSubscribers
responses:
'200':
content:
application/json:
schema:
type: object
properties:
content:
type: array
items:
$ref: '#/components/schemas/SubscriberResponse'
description: Success - returns an array of information about your account's subscribers.
'404':
content:
application/json:
schema:
type: object
properties:
error:
properties:
code:
type: string
message:
type: string
type: object
description: Error - resource not found.
summary: Returns a list of information about your account's subscribers.
tags:
- Subscribers
description: 'Returns a paginated list of information about your company''s subscribers.<p><br><p>Optionally, you can order, offset, limit and filter the results.<p><br> You can filter results by any field and order them by: <ul><li>Connection date</li><li>Expiry date</li><li>Termination date</li><li>Tariff</li><li>Line rental</li></ul><p><p><br>To use this endpoint, your user account must have the <strong>View Subscriber</strong> permission enabled. </p>'
parameters:
- name: limit
in: query
description: 'Specifies the upper limit of the number of results to return. This filter has an upper limit of 100.<p>For example, setting this to 10 limits the query to returning a maximum of ten records.</p>'
schema:
type: number
maximum: 100
default: 25
- name: offset
in: query
description: 'Offsets the returned results to begin at a particular record count.<p>For example, setting this to 10 causes the query to skip the first ten records in the data set.</p>'
schema:
type: number
default: 0
- name: filter
in: query
description: 'Filter the results the query returns.<p>For example, to retrieve all users called Tom, with an age above 21, set the filter to - name eq "Tom" and age gt 21''.</p>'
schema:
type: string
- name: orderBy
in: query
description: 'Order the results by a particular field in either ascending or descending order.<p>This parameter supports multiple fields for sorting, for example, ''name ASC, created DESC''.</p>'
schema:
type: string