Get messaging bootstrap
Returns messaging bootstrap for the authorised account.
GET
/api/v1/messaging/bootstrapmessaging: read1,000 requests/minute/key · all plansActive API keys: Free 1, Pro 5, Pro+ 5. The request rate is the same on every plan.
Message storage
Message text is encrypted at rest and decrypted for authorised requests. Channel access is restricted to spaces owned by the API key’s account; missing or inaccessible channels return 404. Editing or deleting a message additionally checks its author and can return 403.
Parameters
No path or query parameters.
Response schema
200
Successful response.
| Name | Type | Required | Description |
|---|---|---|---|
spaces | array<object> | Required | Spaces. |
spaces[].id | string | Required | Unique identifier. |
spaces[].name | string | Required | Name of the resource. |
spaces[].userId | string | Required | Owning account identifier. |
spaces[].updatedAt | number | Required | Most recent update time. |
spaces[].description | null | string | Required | Description of the resource. |
spaces[].createdAt | number | Required | Creation time. |
spaces[].deletedAt | null | number | Required | Deletion time; null when active. |
spaces[].sideSystemId | null | string | Required | Side System Id. |
spaces[].version | number | Required | Version used for optimistic concurrency checks. |
spaces[].sortOrder | number | Required | Sort Order. |
spaces[].purgeAt | null | number | Required | Purge At. |
spaces[].archivedAt | null | number | Required | Archiving time; null when active. |
spaces[].iconStorageRef | null | string | Required | Icon Storage Ref. |
spaces[].createdByUserId | string | Required | Created By User Id. |
spaces[].iconUrl | null | string | Required | Icon Url. |
categories | array<object> | Required | Categories. |
categories[].id | string | Required | Unique identifier. |
categories[].name | string | Required | Name of the resource. |
categories[].userId | null | string | Required | Owning account identifier. |
categories[].updatedAt | number | Required | Most recent update time. |
categories[].createdAt | number | Required | Creation time. |
categories[].deletedAt | null | number | Required | Deletion time; null when active. |
categories[].sortOrder | number | Required | Sort Order. |
categories[].spaceId | string | Required | Space Id. |
categories[].collapsed | boolean | Required | Collapsed. |
channels | array<object> | Required | Channels. |
channels[].id | string | Required | Unique identifier. |
channels[].name | string | Required | Name of the resource. |
channels[].userId | null | string | Required | Owning account identifier. |
channels[].updatedAt | number | Required | Most recent update time. |
channels[].createdAt | number | Required | Creation time. |
channels[].deletedAt | null | number | Required | Deletion time; null when active. |
channels[].version | number | Required | Version used for optimistic concurrency checks. |
channels[].sortOrder | number | Required | Sort Order. |
channels[].purgeAt | null | number | Required | Purge At. |
channels[].archivedAt | null | number | Required | Archiving time; null when active. |
channels[].spaceId | string | Required | Space Id. |
channels[].categoryId | null | string | Required | Category Id. |
channels[].channelType | string | Required | Channel Type. |
channels[].topic | null | string | Required | Topic. |
unreadByChannelId | object | Required | Unread By Channel Id. |
lastSpaceId | null | string | Required | Last Space Id. |
lastChannelId | null | string | Required | Last Channel Id. |
Errors
400· JSON errorRequest failed (BAD_REQUEST).
401· JSON errorMissing or invalid API key. Use Authorization: Bearer <token>.
403· JSON errorRequires messaging: read; ownership or feature restrictions may also deny access.
404· JSON errorRequest failed (NOT_FOUND).
409· JSON errorconflict.
429· JSON errorAPI rate limit exceeded (1000 requests per minute). Retry shortly.
500· JSON errorinternal server error.
503· JSON errorObject storage is not configured. Set MinIO (or compatible S3) env vars to upload files.
Request example
Set FLORALITY_KEY in your environment. These examples use demo identifiers.
curl --request GET 'https://floralitys.com/api/v1/messaging/bootstrap' \
--header "Authorization: Bearer $FLORALITY_KEY"Responses
Successful response.
{
"spaces": [
{
"id": "11111111-1111-4111-8111-111111111111",
"name": "River",
"userId": "11111111-1111-4111-8111-111111111111",
"updatedAt": 1767225600000,
"description": null,
"createdAt": 1767225600000,
"deletedAt": null,
"sideSystemId": null,
"version": 0,
"sortOrder": 0,
"purgeAt": null,
"archivedAt": null,
"iconStorageRef": null,
"createdByUserId": "11111111-1111-4111-8111-111111111111",
"iconUrl": null
}
],
"categories": [
{
"id": "11111111-1111-4111-8111-111111111111",
"name": "River",
"userId": null,
"updatedAt": 1767225600000,
"createdAt": 1767225600000,
"deletedAt": null,
"sortOrder": 0,
"spaceId": "11111111-1111-4111-8111-111111111111",
"collapsed": false
}
],
"channels": [
{
"id": "11111111-1111-4111-8111-111111111111",
"name": "River",
"userId": null,
"updatedAt": 1767225600000,
"createdAt": 1767225600000,
"deletedAt": null,
"version": 0,
"sortOrder": 0,
"purgeAt": null,
"archivedAt": null,
"spaceId": "11111111-1111-4111-8111-111111111111",
"categoryId": null,
"channelType": "demo",
"topic": null
}
],
"unreadByChannelId": {},
"lastSpaceId": null,
"lastChannelId": null
}Example values are illustrative demo data.
