Updates the Inbox resource.
const url = 'https://api.facteur.local/inboxes/example';const options = { method: 'PATCH', headers: { Authorization: 'Bearer <token>', 'Content-Type': 'application/merge-patch+json' }, body: '{ "description": "Codes for the pipeline", "name": "example", "quota": { "daily": 1, "monthly": { "percent": 1 }, "onExceed": "reject" }, "tags": [ "example" ], "workspace": "example" }'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.facteur.local/inboxes/example \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/merge-patch+json' \ --data '{ "description": "Codes for the pipeline", "name": "example", "quota": { "daily": 1, "monthly": { "percent": 1 }, "onExceed": "reject" }, "tags": [ "example" ], "workspace": "example" }'Updates the Inbox resource.
Authorizations
Section titled “Authorizations”- bearerAuthws:write
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Inbox identifier
Request Bodyrequired
Section titled “Request Bodyrequired”The updated Inbox resource
An inbox: what a customer opens to receive mail or SMS, in a workspace.
object
The new description, at most 140 characters as a reader counts them; an empty one removes it.
Example
Codes for the pipelineThe new name, at most 120 characters.
The ceilings: daily and monthly are a number of messages (monthly may be {"percent": 1 to 100} of the monthly envelope of the plan, the day may not), or null to remove them; onExceed is reject or alert. Setting a ceiling needs a plan that includes it; removing one never does.
The tags, which replace the current ones: at most 12 of at most 32 characters, de-duplicated without regard to case, the first spelling kept. An empty list clears them.
The address (slug) of the workspace to move the inbox to, one the caller reaches. The identifier and the address of the inbox do not change.
Responses
Section titled “Responses”Inbox resource updated
An inbox: what a customer opens to receive mail or SMS, in a workspace.
object
What the inbox receives; it never changes.
One line of free text; empty when there is none, never null.
How many extractors the inbox has.
The identifier of the inbox, 8 characters of lower case letters and digits: the first label of its address, and the key of every route. It never changes.
How many messages the inbox holds, whatever their status.
What the inbox received on the UTC calendar month, read in the ledger: retention does not erode it, unlike messageCount.
True when the inbox keeps no content and holds no retention: retentionDays then says nothing about what it keeps.
The ceilings the inbox sets on itself. Carried on every plan, including those that cannot set one: reading a ceiling is how a customer who left the plan finds the one they have to remove. The sum of the ceilings of an organization is never compared to its envelope.
object
The ceiling of a calendar day, in messages, or null when there is none.
The monthly ceiling, or null when there is none.
object
The ceiling in messages, always the figure in force; null when it is a percentage of a plan that sells no envelope, which holds nothing back.
The share of the monthly envelope of the plan, from 1 to 100, when the ceiling was written that way; otherwise null.
What the ingester does when a ceiling is reached: refuse the message, or accept it and alert.
How many days the messages are kept, from the plan the organization had when the inbox was opened.
At most 12 tags of at most 32 characters, de-duplicated without regard to case.
The workspace the inbox lives in, so that a client holding an inbox can build its address without a second request.
object
Example
{ "channel": "email", "quota": { "onExceed": "reject" }, "smsNumber": "+447700900123"}Invalid input
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}No key, or a key that is refused. WWW-Authenticate says where to read how to present one.
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}The plan of the organization does not include what the call asks for, or its subscription is suspended. currentPlan and requiredPlan name the plans when a plan is the cause.
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}The key does not hold the permission of the operation, or the operation refuses every key.
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}There is none of this identifier in the reach of the key. The answer is the same for another organization or a workspace the key does not name.
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}More calls than the key may make in a minute. Retry-After says when to try again.
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}default
Section titled “default”Any refusal: an application/problem+json body whose code says which.
A refusal, as RFC 9457 application/problem+json with the code of the register. A code adds the members its rule needs (retryAfter, permission…), so more members than these may come.
object
The stable code of the refusal. It never changes once shipped.
English prose for the person who reads the answer. It may be reworded: branch on code.
The HTTP status.
The name of the HTTP status.
The address of the problem: /errors/<code>.
On a body that fails validation, one entry per field.
object
Example
{ "code": "BAD_REQUEST", "status": 404, "title": "Not Found", "type": "/errors/INBOX_NOT_FOUND", "violations": [ { "code": "BAD_REQUEST" } ]}