Numbers

Get a line

Retrieves one line in full: the number, where it is in the provisioning lifecycle, its eSIM, when it last changed state, when it first went into service, the eSIMs it carried before its current one, and the date it is due to end if a termination is scheduled.

Take sim.activationCode — a GSMA LPA:1$… string — and encode it as a QR code to install the eSIM; any QR library will do. SIM details are published only while the line is READY, so during a replacement sim reads null rather than handing out a code that has been revoked.

A line in another organization answers exactly as one that does not exist.

get/v1/numbers/{numberId}

Request

  • Base URL
    https://api.telgea.com
  • Auth
    API key in header x-api-key

Path parameters

numberIdstring uuid required

UUID of the line.

Example:8238c1b9-c2c0-4455-9b03-4bd787052709

Response

Successfully retrieved the line.

idstring required

UUID of the number. This is what SIM replacement and suspension act on.

type'local' | 'travel' required

Which line this is.

countryCodestring required

Market the number belongs to, ISO 3166-1 alpha-2.

phoneNumberstring nullable required

The number in E.164 format, or null until it has been provisioned.

state'PENDING' | 'PORTING' | 'PORTING_FAILED' | 'PROVISIONING' | 'READY' | 'REPLACING' | 'CHANGING' | 'SUSPENDING' | 'SUSPENDED' | 'RESTORING' | 'RECONFIGURING' | 'DEACTIVATING' | 'DEACTIVATED' | 'PORTING_DISCARDED' | 'PORTING_OUT' | 'PORTED_OUT' | 'null' nullable required

Current state of the phone number in the provisioning lifecycle

userIdstring required

UUID of the user who holds the line.

createdAtstring required

When the line was created, as an ISO 8601 UTC time.

stateUpdatedAtstring nullable required

When the line last reached the state it is in, as an ISO 8601 UTC time. Null for a line with no state yet.

terminationScheduledAtstring nullable required

The date this line is scheduled to end, or null when no termination is scheduled. Set by POST /v1/numbers/{numberId}/termination.

activatedAtstring nullable required

When the line first went into service, as an ISO 8601 UTC time: when it was provisioned, or when its number was ported in. Null until then.

Example response

{
  "id": "8238c1b9-c2c0-4455-9b03-4bd787052709",
  "type": "local",
  "countryCode": "DK",
  "phoneNumber": "+4520123456",
  "state": "READY",
  "sim": {
    "iccid": "8945000000000000001",
    "activationCode": "LPA:1$SMDP.TELGEA.COM$34682-73063-9140",
    "pinOne": "1234",
    "pinTwo": "5678",
    "pukOne": "12345678",
    "pukTwo": "87654321"
  },
  "userId": "9c1f2a6e-3b7d-4e0a-8f21-5d6c7b8a9e01",
  "createdAt": "2026-09-17T08:15:00.000Z",
  "stateUpdatedAt": "2026-09-17T08:15:00.000Z",
  "terminationScheduledAt": "2026-10-01T00:00:00.000Z",
  "activatedAt": "2026-09-17T08:20:00.000Z",
  "previousSims": [
    {
      "iccid": "89462000099812030017",
      "inServiceFrom": "2026-03-02T09:00:00.000Z",
      "inServiceTo": "2026-09-14T08:00:00.000Z"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.