Registrations

Submit, update, list and get registration info.

List registrations

The endpoint receives as path param project id. Supports optional query parameters to narrow the results and cursor based pagination.

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

query Parameters
registrationState
string

Status of the registration.

Enum: "DRAFT" "IN_QUEUE" "IN_PROGRESS" "APPROVED" "REJECTED" "PENDING" "ON_HOLD" "PENDING_APPROVAL" "PENDING_ATTACHMENTS"
Example: registrationState=IN_QUEUE
tags
Array of strings

User tags used for the registration. Tag have to start from

Example: tags=#tag1&tags=#tag2
marketCode
string^[A-Z]{2}$

Filter by ISO market code (ex. 'IT', 'AU', 'KW', etc.)

Example: marketCode=MK
createDateFrom
string

Date of registration creation, ISO 8601 format. Returns registrations created after given date.

Example: createDateFrom=2024-11-03
createDateTo
string

Date of registration creation, ISO 8601 format. Returns registrations created before given date.

Example: createDateTo=2024-11-03
updateDateFrom
string

Date of registration update, ISO 8601 format. Returns registrations update after given date.

Example: updateDateFrom=2024-11-03
updateDateTo
string

Date of registration update, ISO 8601 format. Returns registrations updated before given date.

Example: updateDateTo=2024-11-03
senderId
string

Sender ID value.

Example: senderId=senderID
orderBy
string

Ordering of the results: field name with an optional order separated by a comma. Fields that support ordering are 'id', 'status', 'senderId', 'createDate', 'updateDate' with possible ordering 'desc' or 'asc'

Example: orderBy=senderId,asc
pageSize
integer <int32>

Size of the page to be returned.

Example: pageSize=100
pageToken
string

Page token to request subsequent pages when using pagination. This should be the value generated by a system in a previous list request.

registrationType
string <enum>
Default: "ALPHANUMERIC_SENDER_ID"

Registration type for market used in registration is for. There are different markets available depending on this type

Enum: "ALPHANUMERIC_SENDER_ID" "LONG_NUMBER" "SHORT_CODE"
Responses
200

OK

Response Schema: application/json
nextPageToken
string

Page token that can be used to retrieve next page of registrations if they exist. Will be empty if next page does not exist

Array of objects (GetRegistrationResponse)

List of registrations

totalSize
integer <int32>

Total count of registrations matching provided search criteria

403

Customer has no authorization for this API

500

INTERNAL: Internal server error. Typically, a server bug.

get/v1/projects/{projectId}/registrations
Request samples
Response samples
application/json
{
  • "nextPageToken": "string",
  • "registrations": [
    • {
      }
    ],
  • "totalSize": 0
}

Submit registration

The endpoint creates a registration with specified policyId and registration's Data. The registration will be validated against the selected policy before submission. After this endpoint gets a 200, the registration will be in IN_QUEUE state, and will be editable. For those registrations that need attachments, they must be provided in a separated endpoint.

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

Request Body schema: application/json
callbackUrl
string

Webhook URL to specify an endpoint for delivery of notifications about registration updates

notificationContacts
Array of strings

Email addresses that will be notified of any status changes of the registration.

policyId
string

Policy id that applies the registration.

Array of objects (RequestDetails)

Details of the sender ids to be registered. Details depend on the specific market requirements defined in the policy.

tags
Array of strings

User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.

Responses
200

OK

Response Schema: application/json
Array of objects (Attachment)

Files attached to this registration

callbackUrl
string

Webhook URL to specify an endpoint for delivery of notifications about registration updates

createTime
string

Creation time of the request. ISO date time format in UTC without timezone offset.

etaDate
string

Expected date of the registration approval. ISO date format.

id
string

Unique registration identifier.

Array of objects (LogEntry)

Detailed history of the status changes this registration went through

notificationContacts
Array of strings

Email addresses that will be notified of any status changes of the registration.

owner
string

Display name of the user that created the registration.

policyId
string

Unique identifier of the policy for this registration.

object (Pricing)
registrationType
string <enum>

Specify the senderId type

Enum Value Description
ALPHANUMERIC_SENDER_ID

Alpha sender IDs

LONG_NUMBER

Long Numbers for SMS

SHORT_CODE

Short Codes for SMS

Array of objects (RequestDetails)

Details of the sender ids to be registered. Details depend on the specific market requirements defined in the policy.

status
string

Status of the registration.

Enum Value Description
DRAFT

Registration not submitted by the customer. This functionality is not available through Public API, but it is possible to retrieve a registration created in the Sinch Customer Dashboard under the same project Id.

IN_QUEUE

Registration has been successfully submitted, but it is waiting for support.

IN_PROGRESS

Registration is being processing by Sinch.

APPROVED

Registration has been approved and sender Id has been provisioned for the customer.

REJECTED

Registration has been rejected. A comment should be present in the logs with the reason.

PENDING

Registration must be updated by the customer. Please check the registration logs to understand the reason.

ON_HOLD

Registration is on hold for any reason. Please check the comments in the logs.

PENDING_APPROVAL

For those policies with MANUAL price, Account Managers must approve the operation. Until registration has the approval it will stay in this state.

PENDING_ATTACHMENTS

Registration has been submitted, but at least one mandatory attachment must be provided.

tags
Array of strings

User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.

updateTime
string

Update time of the request. ISO date time format in UTC without timezone offset.

400

BAD_REQUEST: Registration validation error

404

NOT_FOUND: Policy not found

500

INTERNAL: Internal server error. Typically, a server bug.

Callbacks
postEvent notification
post/v1/projects/{projectId}/registrations
Request samples
application/json
{ }
Response samples
application/json
{
  • "attachments": [
    • {
      }
    ],
  • "callbackUrl": "senderid.registrations.api.sinch.com",
  • "createTime": "2021-11-03T14:30:03",
  • "etaDate": "2024-11-03",
  • "id": "d1c7ccbf-919d-462f-8587-dec95a1b11ee",
  • "logs": [
    • {
      }
    ],
  • "notificationContacts": [
    • "jane.doe@example.com",
    • "john.doe@example.com"
    ],
  • "owner": "Jane Doe",
  • "policyId": "d1c7ccbf-919d-462f-8587-dec95a1b11ee",
  • "price": {
    • "currency": "USD",
    • "frequency": 1,
    • "mode": "SUBSCRIBED",
    • "recurrentFeeAmount": "2",
    • "setupFeeAmount": "5"
    },
  • "registrationType": "ALPHANUMERIC_SENDER_ID",
  • "requestDetails": [
    • {
      }
    ],
  • "status": "IN_QUEUE",
  • "tags": [
    • "#myTag1",
    • "#myTag2"
    ],
  • "updateTime": "2021-11-03T14:30:03"
}
Callback payload samples
POST: Event notification
application/json
{
  • "comment": "Hi, the NOC letter contains phone numbers, and this is not allowed. Please have this updated to proceed forward. Regards, XX",
  • "eventId": "ee34ccbf-919d-462f-8587-dec95a1b11ee",
  • "eventType": "REGISTRATION_STATUS_CHANGE",
  • "projectId": "aad4ccbf-919d-462f-8587-dec95a1b11b0",
  • "resourceId": "01hh51s80tpvjy7pe0mt6nd7at",
  • "resourceType": "ALPHANUMERIC_SENDER_ID",
  • "status": "IN_QUEUE",
  • "timestamp": "2023-06-06T07:45:27.785357"
}

Delete registration

The endpoint receives as path param project id and registration id. If the registration exists under the specified project id and the registration is in DRAFT, IN QUEUE or PENDING status, the registration will be deleted.

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

registrationId
required
string

Id of the registration to be deleted

Responses
200

OK

400

BAD_REQUEST: Registration is not in DRAFT, IN QUEUE or PENDING status.

404

NOT_FOUND: The registration id introduced does not exist.

500

INTERNAL: Internal server error. Typically, a server bug.

delete/v1/projects/{projectId}/registrations/{registrationId}
Request samples
Response samples
application/json
{
  • "error": {
    • "code": 0,
    • "details": [
      ],
    • "message": "string",
    • "status": "string"
    }
}

Get registration

The endpoint receives as path param project id and registration id. If the registration exists under the specified project id, the details of the registration are returned.

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

registrationId
required
string

Id of the registration

Responses
200

OK

Response Schema: application/json
Array of objects (Attachment)

Files attached to this registration

callbackUrl
string

Webhook URL to specify an endpoint for delivery of notifications about registration updates

createTime
string

Creation time of the request. ISO date time format in UTC without timezone offset.

etaDate
string

Expected date of the registration approval. ISO date format.

id
string

Unique registration identifier.

Array of objects (LogEntry)

Detailed history of the status changes this registration went through

notificationContacts
Array of strings

Email addresses that will be notified of any status changes of the registration.

owner
string

Display name of the user that created the registration.

policyId
string

Unique identifier of the policy for this registration.

object (Pricing)
registrationType
string <enum>

Specify the senderId type

Enum Value Description
ALPHANUMERIC_SENDER_ID

Alpha sender IDs

LONG_NUMBER

Long Numbers for SMS

SHORT_CODE

Short Codes for SMS

Array of objects (RequestDetails)

Details of the sender ids to be registered. Details depend on the specific market requirements defined in the policy.

status
string

Status of the registration.

Enum Value Description
DRAFT

Registration not submitted by the customer. This functionality is not available through Public API, but it is possible to retrieve a registration created in the Sinch Customer Dashboard under the same project Id.

IN_QUEUE

Registration has been successfully submitted, but it is waiting for support.

IN_PROGRESS

Registration is being processing by Sinch.

APPROVED

Registration has been approved and sender Id has been provisioned for the customer.

REJECTED

Registration has been rejected. A comment should be present in the logs with the reason.

PENDING

Registration must be updated by the customer. Please check the registration logs to understand the reason.

ON_HOLD

Registration is on hold for any reason. Please check the comments in the logs.

PENDING_APPROVAL

For those policies with MANUAL price, Account Managers must approve the operation. Until registration has the approval it will stay in this state.

PENDING_ATTACHMENTS

Registration has been submitted, but at least one mandatory attachment must be provided.

tags
Array of strings

User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.

updateTime
string

Update time of the request. ISO date time format in UTC without timezone offset.

404

NOT_FOUND: The registration id introduced does not exist.

500

INTERNAL: Internal server error. Typically, a server bug.

get/v1/projects/{projectId}/registrations/{registrationId}
Request samples
Response samples
application/json
{
  • "attachments": [
    • {
      }
    ],
  • "callbackUrl": "senderid.registrations.api.sinch.com",
  • "createTime": "2021-11-03T14:30:03",
  • "etaDate": "2024-11-03",
  • "id": "d1c7ccbf-919d-462f-8587-dec95a1b11ee",
  • "logs": [
    • {
      }
    ],
  • "notificationContacts": [
    • "jane.doe@example.com",
    • "john.doe@example.com"
    ],
  • "owner": "Jane Doe",
  • "policyId": "d1c7ccbf-919d-462f-8587-dec95a1b11ee",
  • "price": {
    • "currency": "USD",
    • "frequency": 1,
    • "mode": "SUBSCRIBED",
    • "recurrentFeeAmount": "2",
    • "setupFeeAmount": "5"
    },
  • "registrationType": "ALPHANUMERIC_SENDER_ID",
  • "requestDetails": [
    • {
      }
    ],
  • "status": "IN_QUEUE",
  • "tags": [
    • "#myTag1",
    • "#myTag2"
    ],
  • "updateTime": "2021-11-03T14:30:03"
}

Update a registration

The endpoint updates the registration with specified ID

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

registrationId
required
string

Id of the registration to be updated

Request Body schema: application/json
callbackUrl
string

Webhook URL to specify an endpoint for delivery of notifications about registration updates

notificationContacts
Array of strings

Email addresses that will be notified of any status changes of the registration.

Array of objects (RequestDetails)

Details of the sender ids to be registered. Details depend on the specific market requirements defined in the policy.

tags
Array of strings

User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.

Responses
200

OK

Response Schema: application/json
Array of objects (Attachment)

Files attached to this registration

callbackUrl
string

Webhook URL to specify an endpoint for delivery of notifications about registration updates

createTime
string

Creation time of the request. ISO date time format in UTC without timezone offset.

etaDate
string

Expected date of the registration approval. ISO date format.

id
string

Unique registration identifier.

Array of objects (LogEntry)

Detailed history of the status changes this registration went through

notificationContacts
Array of strings

Email addresses that will be notified of any status changes of the registration.

owner
string

Display name of the user that created the registration.

policyId
string

Unique identifier of the policy for this registration.

object (Pricing)
registrationType
string <enum>

Specify the senderId type

Enum Value Description
ALPHANUMERIC_SENDER_ID

Alpha sender IDs

LONG_NUMBER

Long Numbers for SMS

SHORT_CODE

Short Codes for SMS

Array of objects (RequestDetails)

Details of the sender ids to be registered. Details depend on the specific market requirements defined in the policy.

status
string

Status of the registration.

Enum Value Description
DRAFT

Registration not submitted by the customer. This functionality is not available through Public API, but it is possible to retrieve a registration created in the Sinch Customer Dashboard under the same project Id.

IN_QUEUE

Registration has been successfully submitted, but it is waiting for support.

IN_PROGRESS

Registration is being processing by Sinch.

APPROVED

Registration has been approved and sender Id has been provisioned for the customer.

REJECTED

Registration has been rejected. A comment should be present in the logs with the reason.

PENDING

Registration must be updated by the customer. Please check the registration logs to understand the reason.

ON_HOLD

Registration is on hold for any reason. Please check the comments in the logs.

PENDING_APPROVAL

For those policies with MANUAL price, Account Managers must approve the operation. Until registration has the approval it will stay in this state.

PENDING_ATTACHMENTS

Registration has been submitted, but at least one mandatory attachment must be provided.

tags
Array of strings

User tags used for the registration. Tag have to start from '#' and contains only alphanumerics and dashes.

updateTime
string

Update time of the request. ISO date time format in UTC without timezone offset.

400

BAD_REQUEST: Registration validation error

404

NOT_FOUND: The registration id introduced does not exist.

500

INTERNAL: Internal server error. Typically, a server bug.

put/v1/projects/{projectId}/registrations/{registrationId}
Request samples
application/json
{ }
Response samples
application/json
{
  • "attachments": [
    • {
      }
    ],
  • "callbackUrl": "senderid.registrations.api.sinch.com",
  • "createTime": "2021-11-03T14:30:03",
  • "etaDate": "2024-11-03",
  • "id": "d1c7ccbf-919d-462f-8587-dec95a1b11ee",
  • "logs": [
    • {
      }
    ],
  • "notificationContacts": [
    • "jane.doe@example.com",
    • "john.doe@example.com"
    ],
  • "owner": "Jane Doe",
  • "policyId": "d1c7ccbf-919d-462f-8587-dec95a1b11ee",
  • "price": {
    • "currency": "USD",
    • "frequency": 1,
    • "mode": "SUBSCRIBED",
    • "recurrentFeeAmount": "2",
    • "setupFeeAmount": "5"
    },
  • "registrationType": "ALPHANUMERIC_SENDER_ID",
  • "requestDetails": [
    • {
      }
    ],
  • "status": "IN_QUEUE",
  • "tags": [
    • "#myTag1",
    • "#myTag2"
    ],
  • "updateTime": "2021-11-03T14:30:03"
}

Download previous attachment

Download attachments previously added to the registration.

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

Example: eeew32344324edewe2e3
registrationId
required
string

Registration id requested

Example: 234235425jhl21132424lf
attachmentId
required
string

Attachment definition id requested

Example: 324234762423034240
Responses
200

Request Successful with binary file returned in octet stream

Response Schema: application/octet-stream
string <binary>
404

registration/document not found

get/v1/projects/{projectId}/registrations/{registrationId}/attachments/{attachmentId}
Request samples
Response samples
application/json
{
  • "error": {
    • "code": 0,
    • "details": [
      ],
    • "message": "string",
    • "status": "string"
    }
}

Upload attachment

Through this endpoint, attachments can be added to registrations. The required attachments for each registration can be retrieved from the get policy endpoint.

SecurityOAuth2
Request
path Parameters
projectId
required
string

Customer's project id

Example: eeew32344324edewe2e3
registrationId
required
string

Registration id requested

Example: 234235425jhl21132424lf
attachmentId
required
string

Attachment definition id requested

Example: 324234762423034240
Request Body schema: multipart/form-data

File content body

string <binary>
Responses
200

Document uploaded successfully

400

Registration status is not valid for including attachments

404

registration/document not found

413

Document is too large to upload

post/v1/projects/{projectId}/registrations/{registrationId}/attachments/{attachmentId}
Request samples
Response samples
application/json
{
  • "error": {
    • "code": 0,
    • "details": [
      ],
    • "message": "string",
    • "status": "string"
    }
}