Skip to main content

1GLOBAL API (v1)

Download OpenAPI specification:Download

A set of HTTP REST endpoints that facilitates integration with 1GLOBAL's global connectivity platform

Accounts

Retrieves information that relates to the customer’s legal entity. Data at this level rarely changes throughout the lifecycle of the customer. There is normally a one to one relationship between the countries account and the primary countries MSISDNs (mobile number). Each account will be invoiced on an monthly basis and is the highest linkage to the account level products and persons.

Retrieves all accounts

Retrieves all accounts

Authorizations:
OAuth2
query Parameters
limit
integer <int32> [ 1 .. 100 ]
Default: 10

Number of items to retrieve per page, maximum 50

cursor
string (Cursor) [ 1 .. 128 ] characters ^[0-9a-zA-Z\-\.\_\~]{1,128}$

Specifies a cursor to get the next page of results

Responses

Response samples

Content type
application/hal+json
{}

Retrieves an account by its id

Retrieves an account by its id

Authorizations:
OAuth2
path Parameters
id
required
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: 1b648e62-daaa-49ca-8842-7f36f848ceea

The resource identifier

Responses

Response samples

Content type
application/hal+json
{}

Products

Retrieves details of the 1GLOBAL products that are either active (Current) or are deactivated against the person. Each person will be active against a core plan that holds the bundles associated to the plan along with the MSISDN (mobile number) and ICCID (SIM number) details. Products can be held at account level as well as persons level. Add-on products can also be linked to a person or shared at account level. Products that are shared will not be linked to an individual person as they are shared.

Retrieves all products

Retrieves all products

Authorizations:
OAuth2
query Parameters
account-id
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: account-id=1b648e62-daaa-49ca-8842-7f36f848ceea

An account's identifier

status
any (ProductStatus)
Enum: "active" "terminated"

The product status

limit
integer <int32> [ 1 .. 100 ]
Default: 10

Number of items to retrieve per page, maximum 50

cursor
string (Cursor) [ 1 .. 128 ] characters ^[0-9a-zA-Z\-\.\_\~]{1,128}$

Specifies a cursor to get the next page of results

Responses

Response samples

Content type
application/hal+json
{}

Retrieves a product by its id

Retrieves a product by its id

Authorizations:
OAuth2
path Parameters
id
required
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: 1b648e62-daaa-49ca-8842-7f36f848ceea

The resource identifier

Responses

Response samples

Content type
application/hal+json
{}

Persons

Information retrieved in the Persons API provides details relating to the individual user. This will include first name, last name and any other information held by 1GLOBAL relevant to the user such as email address. This also shows the active MSISDNs (mobile number) and its related active products associated to the person. Please note this will not show products that are shared at account level.

Retrieves all persons

Retrieves all persons

Authorizations:
OAuth2
query Parameters
email
string (Email) [ 6 .. 128 ] characters ^.+\@.+\..+$
Example: email=someone@truphone.com

The person’s email address

account-id
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: account-id=1b648e62-daaa-49ca-8842-7f36f848ceea

An account's identifier

limit
integer <int32> [ 1 .. 100 ]
Default: 10

Number of items to retrieve per page, maximum 50

cursor
string (Cursor) [ 1 .. 128 ] characters ^[0-9a-zA-Z\-\.\_\~]{1,128}$

Specifies a cursor to get the next page of results

Responses

Response samples

Content type
application/hal+json
{}

Retrieves a person by its id

Retrieves a person by its id

Authorizations:
OAuth2
path Parameters
id
required
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: 1b648e62-daaa-49ca-8842-7f36f848ceea

The resource identifier

Responses

Response samples

Content type
application/hal+json
{}

Billing Usage

Billing Usage API retrieves near real time usage summary by type of event (voice, SMS, data) or itemised usage. Search work on all MSISDNs (mobile number) assigned to the user (e.g. Primary and secondary numbers) and the results will be returned at the user level and not at MSISDN level. i.e. when searching using someone's primary or any additional number, the results returned will be the same and will show results for calls that were made from or received by any of the numbers assigned to the person.

Retrieves itemised billing usage for the account s

Retrieves itemised billing usage for the account sorted in descending order by start stamp, with the most recently usage appearing first

Authorizations:
OAuth2
query Parameters
account-id
required
string

An account's identifier

from-date
string <date> (Iso8601Date) ^([0-9]{4})-(?:[0-9]{2})-([0-9]{2})$

Usage date begin filter. The begin date is inclusive

to-date
string <date> (Iso8601Date) ^([0-9]{4})-(?:[0-9]{2})-([0-9]{2})$

Usage date end filter. The begin date is exclusive

object

Usage person filter

object

Usage product filter

type
Array of strings
Items Enum: "voice" "data" "sms"

Usage type filter

cost-type
Array of strings (CostType)
Items Enum: "free" "in_bundle" "out_of_bundle"

Usage cost type filter

direction
string
Enum: "inbound" "outbound"

Usage direction filter

number
string

Usage from or to number filter

cursor
string (Cursor) [ 1 .. 128 ] characters ^[0-9a-zA-Z\-\.\_\~]{1,128}$

Specifies a cursor to get the next page of results

limit
integer <int32> (Limit) [ 1 .. 100 ]
Default: 10

The maximum number of items to retrieve, per page

Responses

Response samples

Content type
application/hal+json
{
  • "from_date": "2021-11-10",
  • "to_date": "2021-12-10",
  • "uri": "tri:billing:cost::12345678:usage/items:",
  • "_links": {
    },
  • "_embedded": {
    }
}

Call Recordings

View recorded voice call's metadata

Get all call recordings

Returns all call recordings

Authorizations:
OAuth2
query Parameters
account-id
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: account-id=1b648e62-daaa-49ca-8842-7f36f848ceea

account identifier

subscriber-id
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: subscriber-id=1b648e62-daaa-49ca-8842-7f36f848ceea

Subscriber identifier

start-created-stamp
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: start-created-stamp=1b648e62-daaa-49ca-8842-7f36f848ceea

Sync timestamp start

end-created-stamp
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: end-created-stamp=1b648e62-daaa-49ca-8842-7f36f848ceea

Sync timestamp end

established
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: established=1b648e62-daaa-49ca-8842-7f36f848ceea

Connection established

cursor
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: cursor=1b648e62-daaa-49ca-8842-7f36f848ceea

A string containing an UUID as specified in IETF's RFC 4122

page-size
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: page-size=1b648e62-daaa-49ca-8842-7f36f848ceea

A string containing an UUID as specified in IETF's RFC 4122

Responses

Response samples

Content type
application/json
{
  • "_embedded": {
    },
  • "_links": {}
}

Find call recording by ID

Returns a single call recording

Authorizations:
OAuth2
path Parameters
id
required
string (UUID) = 36 characters ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]...
Example: 7de05476-06ad-4647-8270-52bcef9396d3

ID of call recording

Responses

Response samples

Content type
application/json
{
  • "id": "1b648e62-daaa-49ca-8842-7f36f848ceea",
  • "created_stamp": "2021-02-01T14:28:17.967Z",
  • "call_id": "1b648e62-daaa-49ca-8842-7f36f848ceea",
  • "call_random_seed": "1b648e62-daaa-49ca-8842-7f36f848ceea",
  • "status": "orig_closed",
  • "established": true,
  • "direction": "inbound",
  • "account": {
    },
  • "caller_number": "+441112323421",
  • "callee_number": "+441112323421",
  • "diversion_number": "+441112323421",
  • "recording": {
    },
  • "subscriber": {
    },
  • "_links": {}
}

SMS Recordings

Query messages with metadata

Get all SMS recordings

Authorizations:
OAuth2
query Parameters
pageSize
integer <int32>
Default: 20

Number of entries per page

cursor
integer <int32>
Default: 0

Page number

sortOrder
string
Default: "ASC"
Enum: "ASC" "DESC"

Entries sort order by creation timestamp

type
string (MessageType)
Enum: "SMS" "MMS"

Filter by message type

status
string
Enum: "CREATED" "PUBLISHED" "PROCESSED" "FAILED" "CONSUMED" "CONCATENATED"

Filter by message status

direction
string
Enum: "INBOUND" "INCOMING" "IN" "OUTBOUND" "OUTGOING" "OUT"

Filter by message direction

subscriberId
integer <int64>

Filter by subscriber ID

email
string <email>

Filter by subscriber email

primaryNumber
string

Filter by subscriber primary phone number

startTimestamp
string <date-time>

Filter by creation timestamp since (inclusive)

endTimestamp
string <date-time>

Filter by creation timestamp until (exclusive)

Responses

Response samples

Content type
application/json
{}

Find SMS recording by ID

Authorizations:
OAuth2
path Parameters
requestId
required
string <uuid>

Message request ID

Responses

Response samples

Content type
application/json
{
  • "request_id": "266ea41d-adf5-480b-af50-15b940c2b846",
  • "message_type": "SMS",
  • "direction": "INBOUND",
  • "from_number": "string",
  • "to_number": "string",
  • "payload": { },
  • "payload_digest": "473287f8298dba7163a897908958f7c0eae733e25d2e027992ea2edc9bed2fa8",
  • "account": {
    },
  • "subscriber": {
    },
  • "sent_at": "2019-08-24T14:15:22Z",
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "retried_at": "2019-08-24T14:15:22Z",
  • "deleted_at": "2019-08-24T14:15:22Z",
}