Submit an Apple Messages for Business business for review
/v1/amb/business-accounts/{business_account_id}/submissionsconst result = await bird.amb.businessAccounts.submissions.create(
"abz_01krdgeqcxet5s7t44vh8rt9mg",
{
readiness_attachment_id: "tca_01krdgeqcxet5s7t44vh8rt9mg",
use_cases_attachment_id: "tca_01krdgeqcxet5s7t44vh8rt9mh",
video_attachment_id: "tca_01krdgeqcxet5s7t44vh8rt9mj",
},
);
console.log(result);result = client.amb.business_accounts.submissions.create(
'abz_01krdgeqcxet5s7t44vh8rt9mg',
readiness_attachment_id='tca_01krdgeqcxet5s7t44vh8rt9mg',
use_cases_attachment_id='tca_01krdgeqcxet5s7t44vh8rt9mh',
video_attachment_id='tca_01krdgeqcxet5s7t44vh8rt9mj',
)
print(result)result, err := client.Amb.BusinessAccounts.Submissions.Create(ctx, "abz_01krdgeqcxet5s7t44vh8rt9mg", bird.AmbBusinessAccountsSubmissionsCreateParams{
ReadinessAttachmentID: "tca_01krdgeqcxet5s7t44vh8rt9mg",
UseCasesAttachmentID: "tca_01krdgeqcxet5s7t44vh8rt9mh",
VideoAttachmentID: "tca_01krdgeqcxet5s7t44vh8rt9mj",
})
if err != nil {
log.Fatal(err)
}
fmt.Println(result)$bird->amb->businessAccounts->submissions->create(
'abz_01krdgeqcxet5s7t44vh8rt9mg',
(new Model\AMBBusinessAccountSubmissionCreate())
->setReadinessAttachmentId('tca_01krdgeqcxet5s7t44vh8rt9mg')
->setUseCasesAttachmentId('tca_01krdgeqcxet5s7t44vh8rt9mh')
->setVideoAttachmentId('tca_01krdgeqcxet5s7t44vh8rt9mj'),
);bird amb business-accounts submissions create <business-account-id> \
--readiness-attachment-id tca_01krdgeqcxet5s7t44vh8rt9mg \
--use-cases-attachment-id tca_01krdgeqcxet5s7t44vh8rt9mg \
--video-attachment-id tca_01krdgeqcxet5s7t44vh8rt9mgcurl -X POST "https://us1.platform.bird.com/v1/amb/business-accounts/{business_account_id}/submissions" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"readiness_attachment_id": "tca_01krdgeqcxet5s7t44vh8rt9mg",
"use_cases_attachment_id": "tca_01krdgeqcxet5s7t44vh8rt9mg",
"video_attachment_id": "tca_01krdgeqcxet5s7t44vh8rt9mg"
}'{
"id": "abs_01krdgeqcxet5s7t44vh8rt9mg",
"business_account_id": "abz_01krdgeqcxet5s7t44vh8rt9mg",
"readiness_attachment": {
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-25T16:42:01Z",
"id": "tca_01krdgeqcxet5s7t44vh8rt9mg",
"status": "draft"
},
"use_cases_attachment": {
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-25T16:42:01Z",
"id": "tca_01krdgeqcxet5s7t44vh8rt9mg",
"status": "draft"
},
"video_attachment": {
"created_at": "2026-05-20T09:14:52Z",
"updated_at": "2026-05-25T16:42:01Z",
"id": "tca_01krdgeqcxet5s7t44vh8rt9mg",
"status": "draft"
},
"status": "submitted",
"next": [
{
"kind": "operation"
}
]
}
Submits an account for review, making its name, Apple UUID and three uploaded evidence attachments available to Bird staff. This does not approve the account.
Paramètres
business_account_idstringCorps de la requête
readiness_attachment_idUploaded PDF attachment containing the business readiness assessment.
use_cases_attachment_idUploaded PDF attachment describing the proposed customer use cases.
video_attachment_idUploaded MP4 attachment demonstrating the customer experience.
Contenu de la réponse
idbusiness_account_idapple_business_idThe Apple business UUID frozen when this attempt was submitted.
nameThe customer-supplied Bird account name frozen when this attempt was submitted.
readiness_attachmentuse_cases_attachmentvideo_attachmentstatusThe review outcome of this attempt. Earlier attempts retain their outcome when a new attempt is submitted.
status_reasonReview feedback on this attempt, such as the reason Apple rejected it. May contain basic Markdown, such as emphasis and lists.
created_atnextRead the parent business account for current eligibility and next actions. Present on create responses and each customer submission-list item; historical attempts do not establish current account state.
Afficher les attributs enfants
next.kindWhat you do about this step.
operation: call the operation named inoperation, then read again.external: act somewhere this API does not reach, then read again.wait: nothing is asked of you, so read again later.terminal: nothing you do resolves this, so stop retrying.
Tolerate a value you do not recognize: show the description and
offer no action.
Possible values (may grow over time): operation, external, wait, terminal
next.descriptionA short, human-readable label for the step, suitable for display.
next.operationThe operationId to call. Present only when kind is operation. The operation's own schema says how to call it; this says only which one, and what to address it with.
next.paramsThe parameters that address the operation, by name: {"sender_id": "…"} for an operation on /v1/sms/senders/{sender_id}/requirements. A parameter the operation takes in its query string is given the same way, so an operation addressed as ?subject_id= carries {"subject_id": "…"}. Every parameter the call needs is here, whether its value came from the thing you were acting on or is fixed for this step, so you can make the call from this object alone. Present only when kind is operation and the operation names a subject. A request body, when the operation takes one, is described by the operation's own schema and never appears here.
next.urlA URL to open. Present only when kind is external, and only when the step has one. An external step whose description says to go and do something with no URL to open is normal.
updated_atRessources associées
Poursuivez avec la documentation, les guides et les exemples sur ce sujet.