Choose who gets threads that no rule picks
const url = 'https://api.threadkite.app/v1/rules/fallback';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"inboxId":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","type":"unassigned","userId":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://api.threadkite.app/v1/rules/fallback \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "inboxId": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "type": "unassigned", "userId": "example" }'For one inbox: leave them unassigned, give them to someone with a Full seat who is in it, or round robin across its members with a Full seat. Stored as the inbox’s fallback rule, checked after every other rule.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”object
The inbox it is for (your default inbox when left out)
assign_user only: someone with a Full seat
Responses
Section titled “Responses”object
The inbox it is for
When no rule picks anyone: leave it unassigned, give it to userId, or round robin across the inbox’s members with a Full seat
assign_user only
The fallback rule (null when unassigned)
Example
{ "type": "unassigned"}object
Stable machine-readable reason
With code invalid: every problem with the request, by field (message is the first)
object
Dotted path inside the item, e.g. attributes.price.amountMinor
Example
{ "statusCode": 403, "code": "forbidden", "message": "You do not have permission to do that.", "errors": [ { "message": "Enter the make" } ]}Missing or invalid API key
object
Stable machine-readable reason
With code invalid: every problem with the request, by field (message is the first)
object
Dotted path inside the item, e.g. attributes.price.amountMinor
Example
{ "statusCode": 403, "code": "forbidden", "message": "You do not have permission to do that.", "errors": [ { "message": "Enter the make" } ]}The organisation is on the Free plan (code upgrade_required)
object
Stable machine-readable reason
The feature that needs Pro
Where to upgrade or pay, in the web app
Example
{ "statusCode": 402, "code": "upgrade_required", "message": "Connections are part of Pro. Upgrade to connect texts, calls and more.", "feature": "extraSeats", "upgradePath": "/settings/billing"}The key does not have the scope (or the person the permission)
object
Stable machine-readable reason
With code invalid: every problem with the request, by field (message is the first)
object
Dotted path inside the item, e.g. attributes.price.amountMinor
Example
{ "statusCode": 403, "code": "forbidden", "message": "You do not have permission to do that.", "errors": [ { "message": "Enter the make" } ]}Rate limit reached
object
Stable machine-readable reason
Seconds until another request will be accepted
Example
{ "statusCode": 429, "code": "rate_limited", "message": "Too many requests. Each key can make 120 requests a minute; try again in 12 seconds.", "retryAfter": 12}