Respond to Order Rejections (Information Requests)
While Swyft processes an order, our team may raise a rejection — an information request for corrected or
additional information - needed to continue the filing (for example, a business name that is too
similar to an existing company). When an order has an open rejection, its reported status becomes
Action Required.
You can resolve these rejections programmatically with the rejection-response endpoint.
All rejections need to be solved, in order for the order to go back to the previous state.
Discovering open rejections
Open rejections are surfaced under required_actions.rejections Get order
response (and on the order_status_change webhook payload):
"required_actions": {
"rejections": [
{
"id": 220742,
"field": "business_name",
"reason": "Your business name is too similar to another company already in business. Please provide us with a new business name to submit to the state.",
"message": "Use rejection answer EP to answer rejection."
}
]
}
Each rejection's id is a stable, globally-unique identifier — that is the value you pass to the
endpoint below.
The field is the actual Data Point related to the original order creation. You need to pass this attribute on your response.
The message field tells you how to resolve the rejection:
message | How to resolve |
|---|---|
Use rejection answer EP to answer rejection. | Submit a text reply with the endpoint below. |
Upload the requested document via the documents EP to answer this rejection. | The rejection asks for a document, not a text answer — the endpoint below will not close it. Resolve it with the Upload order documents endpoint instead, passing this rejection's id as rejection_id — doing so also lets you omit field_key entirely, since the server derives it from the rejection. This message covers two distinct rejection kinds: an ad-hoc file request, and a required document rejection tied to a specific input field. For a required-document rejection you can alternatively upload with field_key set to that field's key and skip rejection_id altogether, since it's satisfied independently of how many other rejections are open. For a file request there's no such key-based alternative — rejection_id is required to resolve it; a plain attachment upload (no field_key, no rejection_id) leaves the file request open. |
📝 Bundled orders: For an incorporation/bundle order, the parent order's
required_actions.rejectionslist also includes rejections raised on its child lines. The child orders are never exposed individually, so respond using the parent order'suuidand the rejectionid— Swyft routes the answer to the correct underlying line automatically.
Submit a rejection response
POST {baseUrl}/orders/{order_uuid}/rejection
Authorization: Bearer {token}
Content-Type: application/json
{
"order_rejection_id": 220742,
"field": "business_name",
"response": "Bright Harbor Consulting LLC."
}
| Field | Type | Notes |
|---|---|---|
order_uuid | string (path) | UUID of the order you are tracking (the parent order for a bundle). |
order_rejection_id | integer | The id from required_actions.rejections. Must belong to the order or one of its child lines. |
response | string | Your reply that resolves the rejection. Max 255 characters. |
Success
{
"data": {
"message": "Rejection response submitted successfully",
"order_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
},
"success": true
}
Recording the response closes the rejection: it no longer appears under
required_actions.rejections. If ALL pending rejections have been settled the order's reported status moves from Action Required back
to In Progress. A order_status_change webhook is emitted for the order's new status.
📝 Note: EIN-specific rejections (the entry with
error_codeandid: null) are handled separately and are not answerable through this endpoint.
Errors and edge cases
- 422 Validation:
order_rejection_idis missing/unknown, the rejection does not belong to this order (or its child lines), the rejection has already been responded to, orresponseis empty or longer than 255 characters. - 401 / 403: The order is not associated with your partner account.