Retrieves a Workspace resource.
const url = 'https://api.facteur.local/workspaces/example';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.facteur.local/workspaces/example \ --header 'Authorization: Bearer <token>'Retrieves a Workspace resource.
Authorizations
Section titled “Authorizations”- bearerAuthorg:read
Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Workspace identifier
Responses
Section titled “Responses”Workspace resource
A workspace of an organization: a partition of its inboxes.
object
Whether the caller may create, change and delete workspaces and manage their members.
One of the eight names of the palette, or null.
The identifier of the workspace: the scope of its alert rule (PUT …/notification-rules/quota.threshold/workspace/{id}). The address of the workspace stays its slug.
How many inboxes the workspace holds: one that holds any cannot be deleted.
The workspace every member of the organization reaches: an organization always has one, and it cannot be deleted.
How many people have a row in the workspace; null for the default workspace, which everybody reaches.
What the workspace received on the UTC calendar month, its deleted inboxes included: its share of the messages of the organization, which no ceiling of the organization counts.
The ceiling the workspace sets on itself: monthly only, a workspace has no daily window. The sum of the ceilings of an organization is never compared to its envelope.
object
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 the ceiling is reached: refuse the message, or accept it and alert.
The segment of the address of the workspace, /o/<organization>/w/<slug>: unique in the organization, and it stays when the workspace is renamed.
A label of at most 16 characters shown beside the name, or null.
Example
{ "color": "blue", "quota": { "onExceed": "reject" }}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 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" } ]}