Sender names
Documents
In some regions, local laws require phone numbers to be linked to a specific individual. For verification, you need a local ID, a local driver’s license, or an international passport. Once you order the sender name, we’ll ask you to upload your ID. By local ID, it means if you need a phone number from Australia, you should have an Australian ID. In Europe, you need a European ID.
The sender activation process will begin only once the documents are assigned to the submission.
Regions that do not require uploading ID:
- USA 🇺🇸
- United Kingdom 🇬🇧
For all other regions, this requirement is mandatory.
Headers
All requests in this section will have the same headers.
| Name | Type | Description |
|---|---|---|
| Authorization* | String | API Key. Required*. |
| Content-Type* | String | application/json |
Get all available documents
The behavior/response may vary depending on which organization’s API key is used.
- If you’re using an API key from the Default organization (the first organization in your account), you can get a list of all documents, like admin access.
- If you are using an API key from another organization, you can only receive responses with documents assigned to a specific organization. You can’t access the documents from other organizations.
Get a list of all uploaded documents
GET https://a.loopmessage.com/api/v1/documents/
Path Parameters
| Name | Type | Description |
|---|---|---|
| id* | String | ID that you received after a successful request |
Response
{
"items": [{
"id": "string",
"first_name": "string",
"last_name": "string",
"create_date": "2025-01-27T22:23:51Z",
}],
"count": 1
}
Upload a new document
We are using an external service to verify documents. In the response, you should receive a URL where the user can upload the document and be returned to a specific URL.
POST https://a.loopmessage.com/api/v1/documents/
Request JSON body
| Name | Type | Description |
|---|---|---|
| sender_id* | String | The sender to whom the uploaded document is to be assigned. |
| return_url* | String | HTTPS URL to which the user will be redirected once the documents are uploaded. |
Response
Important! Your user can open the URL once. If the user fails during the upload process, you need to generate a new URL.
Once the document is uploaded, submissions for the new sender name will be switched to the pending status.
{
"url": "https://verification-service..."
}
Assign the uploaded document to the new sender names
If you have already uploaded a document, you can assign it to the new sender name instead of uploading it again.
PATCH https://a.loopmessage.com/api/v1/sender/{document_id}/
Request JSON body
| Name | Type | Description |
|---|---|---|
| sender_ids* | Array | Your sender name IDs. |
Sender names must have verify status, otherwise they will be ignored. Once the document is assigned, submissions for the new sender name will be switched to the pending status.
Response
Response {.tabset .tabset-fade}
tab 200: Accepted
Response will be the same as in the GET method, but with updated values.
Assign documents to another organization
PATCH https://a.loopmessage.com/api/v1/sender/{document_id}/
Request JSON body
| Name | Type | Description |
|---|---|---|
| organization_ids* | Array | IDs of the organizations to which the document must be assigned |
Response
Response {.tabset .tabset-fade}
tab 200: Accepted
Response will be the same as in the GET method, but with updated values.
tab 400: Failed
{
"code": 100,
"success": false,
"message": "error description",
}
Delete document
DELETE https://a.loopmessage.com/api/v1/sender/documents/{document_id}/
Response
Response {.tabset .tabset-fade}
tab 200: Accepted
Response will be the same as in the GET method, but with updated values.
tab 400: Failed
{
"code": 100,
"success": false,
"message": "error description",
}