PortingExperimental
Get port-in details
Retrieves a single port-in request, including the reason it was rejected or failed.
/profiles/{profileReference}/esims/{esimReference}/port-ins/{portInRequestReference}Authorization
Authorization: Bearer {token} — an OAuth2 access token from the client-credentials flow. How authentication works
Path parameters
profileReferencestringrequiredThe eSIM's profile reference (16-digit numeric string)
esimReferencestringrequiredeSIM reference identifier (18-digit opaque token)
portInRequestReferencestringrequiredPublic port-in request reference (8-char uppercase base36)
Responses
200Port-in detailsapplication/jsonShow response bodyHide response body
dataobjectoptionalShow propertiesHide properties
portInRequestReferencestringPublic opaque port-in request reference (8-char uppercase base36)
profileReferencestringesimReferencestringThe eSIM this port-in belongs to
msisdnstringThe number being ported, in international format (E.164 without a leading +)
detailsone of Belgium | NetherlandsoptionalDonor details of the number to port. Their shape depends on the country of the selected eSIM's variant: the Belgian or the Dutch shape. Unknown fields are rejected.
Show propertiesHide properties
BelgiumobjectoptionalDonor details of a Belgian number. A prepaid contract takes donorIccid and/or donorSimNumber; a postpaid contract any of donorIccid, donorSimNumber and donorAccountNumber; a business contract donorAccountNumber only.
Show propertiesHide properties
donorContractTypestringContract type of the number at the donor operator
prepaidpostpaidbusinessdonorIccidstringoptionalICCID of the donor SIM card, with a valid check digit. The preferred proof of a donor SIM: most donor operators accept it.
donorSimNumberstringoptionalThe number printed on the donor SIM card. Send it only when the donor SIM's ICCID is not available; donorIccid is accepted by more donor operators.
donorAccountNumberstringoptionalAccount/customer number at the donor operator
NetherlandsobjectoptionalDonor details of a Dutch number. A postpaid contract requires donorAccountNumber.
Show propertiesHide properties
donorContractTypestringContract type of the number at the donor operator
prepaidpostpaiddonorAccountNumberstringoptionalCustomer number at the donor operator
statusstringrequested: Accepted by Firsty; provider submission in progressapproved: The donor accepted the port;scheduledAtis when the number moves, once known, which can be days ahead. The port finishes atcompletedcancelling: Cancellation requested, awaiting provider confirmationcompleted: The donor released the number and it is assigned to this SIMrejected: Donor rejected the request (seereason); submit a corrected request. A rejection the customer can still correct may keep the requestrequesteduntil it is finalfailed: Port failed (seereason); submit a corrected requestcancelled: Cancellation confirmed; the eSIM stays pre-active for a corrected request or abandon
requestedapprovedcancellingcompletedrejectedfailedcancelledreasonobjectoptionalWhy the port-in was rejected or failed. Present when status is rejected or failed, and on a requested port-in the donor has rejected for a reason the customer can still correct
Show propertiesHide properties
codestringNormalized cause of the rejection or failure, the same for every porting provider. provider_failure covers every cause without a more specific code. The list of values is open-ended; new values may be added
msisdn_sim_mismatchmsisdn_account_mismatchdonor_contract_type_mismatchnumber_not_activenumber_not_portablenumber_porting_in_progressporting_window_unavailableprovider_failuremessagestring | nullHuman-readable detail of the cause for support; free-form, not intended to be parsed. Null when there is none
scheduledAtstring | null · date-timeWhen the number moves to this SIM, as the donor agreed when it approved the port; null until known. It may move until the port completes
submittedAtstring | null · date-timeWhen the port-in was submitted to the provider; null while submission is still pending, and for a port-in whose request was not accepted
completedAtstring | null · date-timeWhen the port completed
abandonedbooleanoptionalWhether porting was abandoned in favour of the temporary number (irreversible; no corrected request possible)
createdAtstring · date-timeupdatedAtstring · date-time401Unauthorized - missing or invalid API key403Forbidden - client does not have access to this resource404Resource not found429Rate limit exceeded. A `429` can also arrive without these headers or this body; handle it by its status code.500Internal server error