Get what a registration needs
Changed onReturns everything a country requires before a registration can be approved, in the order to present it, along with what you have already supplied and where each item stands.
Everything you need to answer an item comes back with it. That covers the accepted values where an item takes a fixed set, the constraints a value must satisfy, and guidance on what a good answer looks like. Items that take a document say so, and some offer a blank form to download and complete. An unsupported country returns 422 rather than an empty result.
This answers one country for one registration you already hold. Omit subject_id and it answers the form alone, unanswered: every requirement reads not_supplied, nothing is satisfied, and there is no submission behind it, which is the state a registration you have not started is in anyway. Reading it that way needs program, since the coordinate is otherwise resolved from the registration.
For a number you hold, pass its ID from GET /v1/numbers as subject_id. For an SMS sender, call GET /v1/sms/senders/{sender_id}/requirements and pass a row's registration_id as subject_id.
Request
- Base URL: https://us1.platform.bird.com
- URL: https://us1.platform.bird.com/v1/compliance/requirements
- Auth: one of:
- HTTP bearer
- API key in cookie bird_session
Query parameters
What is being registered.
- sms_sender: a sender registered to send to one country.
- number: a phone number you hold that needs ownership paperwork before it can carry traffic.
- identity: a business you operate as, registered once and reused by later registrations that name it.
What you are registering.
What is being registered. For sms_sender this is the scr_ id returned when you register a sender for a country. For number it is the nda_ id of a dedicated number you hold, as returned by GET /v1/numbers. A shared short code (nal_) is not accepted: it is shared, so its ownership paperwork is not yours to file. For identity it is the cid_ id of the party being registered, picked from the parties your workspace holds, as returned by GET /v1/compliance/identities.
The registration to answer for. Omit it to read the form on its own, before you hold anything to register: the requirements come back unanswered, which is what to do when you are deciding whether to take a number or a sender on in the first place. Omitting it makes program required, since the coordinate is otherwise resolved from the subject. When you do supply it, it is an scr_ id when subject_kind is sms_sender, an nda_ id when it is number, and a cid_ party id when it is identity.
ISO 3166-1 alpha-2 country code.
The destination country. For identity send ZZ, the international coordinate: your business registers once, not per country.
The registration program a country runs. Available programs depend on the registered resource. An SMS sender registers under an authority regime (alpha or numeric). A phone number proves ownership under its number type (mobile, local, national, short_code, short_code_fteu, or toll_free), matching the values of NumberType. An identity registers your business itself under business, internationally: its coordinate's country is always ZZ. A value is therefore only meaningful alongside the subject it describes. More are added as coverage grows, so treat this as an open set rather than a fixed list.
The programme to read. Optional alongside subject_id, because a registration is under exactly one programme and that is the one used; supply it there only to confirm the programme you expect, since one that is not the registration's own returns a 422, as does supplying one at all for a country that runs no registration programme. Required when subject_id is omitted, because there is then no registration to resolve it from and a country can run more than one.
Prefill the business details from a party you have already described. Requirements that ask about the party come back carrying its answers, marked prefilled; requirements about this sender never prefill because you write the sender's intended use fresh each time. Anything you have already filed for this registration wins over the party's answer.
Headers
Workspace context for the request. Required for dashboard authentication and master keys. Workspace keys and access tokens already identify their workspace; send that workspace or omit the header. A different one is rejected.
Organization context for the request. Required for dashboard authentication. An API key or access token carries its own organization, so send either that organization or no header at all; a different one is rejected.
Response
What this country requires, and where you stand with it.
Example response
{
"subject_id": "scr_01krdgeqcxet5s7t44vh8rt9mg",
"country_code": "US",
"submission_id": "csb_01krdgeqcxet5s7t44vh8rt9mg",
"fields": [
{
"attachment_id": "tca_01krdgeqcxet5s7t44vh8rt9mg",
"attachment_ids": [
"tca_01krdgeqcxet5s7t44vh8rt9mg"
]
}
]
}Changes
- info
endpoint added
- info
- breaking
api path removed without deprecation
- breaking