openapi: 3.0.1 info: title: Truphone (1GLOBAL) IoT Portal Connectivity API description: 'REST API for the Truphone (now 1GLOBAL) IoT Portal, providing SIM / eSIM lifecycle management, connectivity and data-usage inspection, rate plans and subscriptions, and IoT device management. The API is JSON-based: request and response bodies use Content-Type application/json, each operation has a URI (for example /api/v2.2/sims) and may reference a specific resource by ICCID or ID. Truphone was acquired and rebranded to 1GLOBAL in 2022; the IoT Portal API host remains iot.truphone.com while product documentation now lives on 1global.com. eSIM ordering and activation for 1GLOBAL Connect use a separate host (services.truphone.com/connect-api); see the description on the Order operations below. Endpoints, paths, and the token authentication scheme below are documented; request/response schemas are summarized and not exhaustive.' termsOfService: https://www.1global.com contact: name: 1GLOBAL (Truphone) Support url: https://docs.things.1global.com/apireference/ version: '2.2' servers: - url: https://iot.truphone.com/api description: 1GLOBAL IoT Portal API (legacy Truphone host) security: - TokenAuth: [] tags: - name: Connectivity description: Data sessions, call detail records, status, and location updates. paths: /v2.2/sims/{iccid}/status: get: operationId: getSimStatus tags: - Connectivity summary: Get SIM status description: Check a SIM card's service status and data / time limits. parameters: - $ref: '#/components/parameters/Iccid' responses: '200': description: SIM status. content: application/json: schema: $ref: '#/components/schemas/SimStatus' /v2.0/sims/change_data_status: post: operationId: changeDataStatus tags: - Connectivity summary: Activate or suspend data services description: Activate or suspend data services on one or more SIM cards. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChangeStatusRequest' responses: '200': description: Data status change accepted. /v2.0/sims/ongoing_sessions: get: operationId: listOngoingSessions tags: - Connectivity summary: List ongoing data sessions description: List active data sessions, including IP and duration information. responses: '200': description: A list of ongoing data sessions. /v2.0/sims/{iccid}/cdr: get: operationId: listCdrs tags: - Connectivity summary: List call detail records description: Retrieve call detail records (CDRs) for a SIM for usage tracking. parameters: - $ref: '#/components/parameters/Iccid' responses: '200': description: A list of call detail records. components: schemas: ChangeStatusRequest: type: object description: Request to change the status of one or more SIM cards. properties: sims: type: array items: type: string description: List of ICCIDs to act on. status: type: string enum: - TEST - PROVISIONED - PRE-ACTIVE - ACTIVE - SUSPENDED - RETIRED SimStatus: type: object properties: iccid: type: string service_status: type: string data_limit: type: string time_limit: type: string parameters: Iccid: name: iccid in: path required: true description: The ICCID identifying the SIM / eSIM. schema: type: string securitySchemes: TokenAuth: type: apiKey in: header name: Authorization description: 'Token-based authentication. Supply the header `Authorization: Token `. (1GLOBAL Connect and the 1GLOBAL platform API on services.truphone.com use OAuth2 / bearer tokens instead; see provider documentation.)'