# Sinch Sender ID Registrations API

This API describes the set of endpoints available to get each market requirements and create registration for sender IDs.

The list of endpoints allows to create, update and delete a registration and also get the current state.
For each market, customers can check the different requirements depending on the new sender ID scope, and also download templates to fill in for the registrations.

Interested in this API? Please, reach out to your Account Manager for more info. 

Version: 1.0.0
License: MIT

## Servers

Production server
```
https://senderid.registrations.api.sinch.com
```

Staging server
```
https://senderid.numbers-registration.staging.sinch.com
```

## Security

### OAuth2

The username and password are your Key ID and Key Secret from the Access keys section in the Sinch Customer Dashboard. Exchange these for a bearer token (access token).

Type: oauth2
Token URL: https://auth.sinch.com/oauth2/token
Scopes:
- `read`: read
- `write`: write

### hmacAuth

Used for hashing callbacks. Please refer to the callback-configuration endpoints for more information.

Type: http
Scheme: hmac

## Download OpenAPI description

 - [Sinch Sender ID Registrations API](https://developers.sinch.com/_bundle/docs/registration-api/api-reference/registrations.yaml)

## Callback configuration

 - [GET /v1/projects/{projectId}/callback-configuration](https://developers.sinch.com/docs/registration-api/api-reference/registrations/callback-configuration/getcallbackconfiguration.md): The endpoint receives as path param project id. If the project exists, the details of the callback configuration are returned.
 - [PUT /v1/projects/{projectId}/callback-configuration](https://developers.sinch.com/docs/registration-api/api-reference/registrations/callback-configuration/updatecallbackconfiguration.md): The endpoint updates the callback configuration with specified project ID
## Markets

 - [GET /v1/projects/{projectId}/markets/availability](https://developers.sinch.com/docs/registration-api/api-reference/registrations/markets/listavailablemarkets.md): The endpoint retrieves the list of market codes available for alphanumeric registration. Market code is an optional query param, if used, the response will contain a list with the same market code if
 - [GET /v1/projects/{projectId}/markets/details](https://developers.sinch.com/docs/registration-api/api-reference/registrations/markets/listmarketversions.md): The endpoint will return the markets in active status according to the query parameters: market code and registration type
## Policies

 - [GET /v1/projects/{projectId}/policies/{policyId}](https://developers.sinch.com/docs/registration-api/api-reference/registrations/policies/getpolicy.md): Returns the whole configuration of a given policyId, including multi configuration, fields, sections and attachments.
 - [GET /v1/projects/{projectId}/policies/{policyId}/attachments/{attachmentId}/template](https://developers.sinch.com/docs/registration-api/api-reference/registrations/policies/downloadtemplate.md): Download a policy template. Use this enpdoint to download the template for those policy attachments which template value is true.
## Registrations

 - [GET /v1/projects/{projectId}/registrations](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/listregistrations.md): The endpoint receives as path param project id. Supports optional query parameters to narrow the results and cursor based pagination.
 - [POST /v1/projects/{projectId}/registrations](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/createregistration.md): 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, t
 - [DELETE /v1/projects/{projectId}/registrations/{registrationId}](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/deleteregistration.md): 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 registra
 - [GET /v1/projects/{projectId}/registrations/{registrationId}](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/getregistration.md): 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.
 - [PUT /v1/projects/{projectId}/registrations/{registrationId}](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/updateregistration.md): The endpoint updates the registration with specified ID
 - [GET /v1/projects/{projectId}/registrations/{registrationId}/attachments/{attachmentId}](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/downloadregistrationattachment.md): Download attachments previously added to the registration.
 - [POST /v1/projects/{projectId}/registrations/{registrationId}/attachments/{attachmentId}](https://developers.sinch.com/docs/registration-api/api-reference/registrations/registrations/uploadregistrationattachment.md): Through this endpoint, attachments can be added to registrations. The required attachments for each registration can be retrieved from the get policy endpoint.
