Skip to content

Create port-in order

Request

Create an order to port phone numbers from another carrier into Sinch. Refer to the Port-In Status section for more information on port-in order updates. Please note that order will fail if you try to port numbers that are not portable, so you should always use the portability check before creating an order.

Note: For port orders of over 500 numbers, please contact the support team.

Note: In order to send SMS and MMS messages in the US using 10DLC phone numbers, all messages must be sent via an approved campaign. Your campaigns are managed under US 10DLC Campaigns in the SMS section. A number can be associated to an approved campaign after the port completes.

Security
basicAuth or bearerAuth
Bodyapplication/json
desiredPortScheduleobject(DesiredPortDateTime)required

The date and time you want the numbers to be ported in. If you set a defaultPortTime and defaultPortTimeZone in defaults those settings will be used if not set per order. If you haven't set defaults and do not set the time and time zone on the order the system default will be used.

System Default Time: 09:00:00 US/Eastern

phoneNumbersArray of objects(Phone numbers)required

The numbers for the order in e164 format

customerOrderReferencestring

Your reference you specified when creating the order

Default:""
Example:"123456"
onDemandActivationboolean

If you use onDemand activation you will need to make sure the numbers are both confirmed and released for activation, if you don't use onDemand the numbers will be activated on the desiredPortDate is the recommended way. If true the numbers will be activated as when you call :activate, if false they will be activated on the desiredPortDate

Default:false
loaUploadedBystring

Name of the user uploading the LOA

Example:"john doe"
loaAttachmentDatestring, (date-time)

Date when the LOA was uploaded. Formatted as ISO-8601: YYYY-MM-DDThh:mm:ss.SSSZ.

Example:"2024-09-24T12:00:00Z"
resellerNamestring

This is requirement for canadian numbers only, we need to figure out what we expect here and where the customer can find this info

Default:""
curl -i -X POST \
  -u '<username>:<password>' \
  https://porting.api.sinch.com/v1/projects/YOUR_project_id/orders/portIns \
  -H 'Content-Type: application/json' \
  -d '{
    "desiredPortSchedule": {
      "desiredPortDate": "2025-01-31",
      "desiredPortTime": "10:00:00",
      "desiredPortTimeZone": "US/Eastern"
    },
    "phoneNumbers": [
      {
        "phoneNumber": "+12345678901",
        "voiceConfiguration": {
          "type": "EST",
          "trunkId": "123456"
        },
        "portOutInfo": {
          "existingPortOutPin": "1234"
        },
        "endUser": {
          "name": "John Doe",
          "streetName": "Main St",
          "streetNum": "123",
          "city": "Anytown",
          "state": "NY",
          "zipCode": "12345"
        }
      }
    ]
  }'

Responses

Successful operation

Bodyapplication/json
desiredPortScheduleobject(DesiredPortDateTime)required

The date and time you want the numbers to be ported in. If you set a defaultPortTime and defaultPortTimeZone in defaults those settings will be used if not set per order. If you haven't set defaults and do not set the time and time zone on the order the system default will be used.

System Default Time: 09:00:00 US/Eastern

idnumberread-only

The unique identifier for the order

Example:890192331
statusstring(OrderStatus)read-only

The current status of the port order.

Enum ValueDescription
ORDER_BUILDING

The order is being created

PENDING

The order is pending, and can be updated

CONFIRMED

The order is confirmed, and can not be updated but if onDemand is true it can be activated

COMPLETED

The order is completed, the port has completed and the numbers are active

PENDING_CANCELATION

The order is in the process of being cancelled. During this time you cannot submit the same numbers on a new order

CANCELED

The order is cancelled, either by the customer or by the system

customerOrderReferencestring

Your reference you specified when creating the order

Default:""
Example:"123456"
onDemandActivationboolean

If you use onDemand activation you will need to make sure the numbers are both confirmed and released for activation, if you don't use onDemand the numbers will be activated on the desiredPortDate is the recommended way. If true the numbers will be activated as when you call :activate, if false they will be activated on the desiredPortDate

Default:false
loaUploadedBystring

Name of the user uploading the LOA

Example:"john doe"
loaAttachmentDatestring, (date-time)

Date when the LOA was uploaded. Formatted as ISO-8601: YYYY-MM-DDThh:mm:ss.SSSZ.

Example:"2024-09-24T12:00:00Z"
phoneNumbersArray of objects(Phone numbers)

The numbers for the order in e164 format

notesArray of objects(OrderNote)read-only

Notes if any on the order, you will get notes if there is any problems with the order and you send notes as reply to those problems

documentsArray of objects(OrderDocumentBase)read-only

Documents if any on the order, you will get documents if there is any problems with the order and you send documents as reply to those problems

createdDatestring, (date-time)read-only

When the order was created. Formatted as ISO-8601: YYYY-MM-DDThh:mm:ss.SSSZ.

Example:"2024-09-24T12:00:00Z"
resellerNamestring

This is requirement for canadian numbers only, we need to figure out what we expect here and where the customer can find this info

Default:""
Response
{ "id": 890192331, "status": "PENDING", "customerOrderReference": "123456", "onDemandActivation": false, "desiredPortSchedule": { "desiredPortDate": "2025-01-31", "desiredPortTime": "09:00:00", "desiredPortTimeZone": "US/Eastern" }, "loaUploadedBy": "john doe", "loaAttachmentDate": "2024-09-24T12:00:00Z", "phoneNumbers": [ { … } ], "notes": [ { … } ], "documents": [ { … } ], "createdDate": "2024-09-24T12:00:00Z", "resellerName": "" }
We'd love to hear from you!
Rate this content: