Skip to main content

Create a space

space_id is not a settable field. Sending one is rejected with 422. Response 201 Created
The space_id is the name you chose. There is no separate generated id. The name you pass on create is the identifier every other endpoint takes, so pick it deliberately. Every memory operation requires it.
A name containing characters that are not URL-safe produces a space_id containing them too. That is legal, but the id then has to be percent-encoded everywhere it appears in a path: my space becomes /v1/spaces/my%20space. Sticking to letters, digits, - and _ avoids the problem entirely.

List spaces

Response 200 OK

Get space details

Response 200 OK

Delete a space

Response 204 No Content.
Deleting a space permanently destroys the space and every memory in it. This cannot be undone.

Space members

Spaces can optionally have named members within your organization.
The membership endpoints are control-plane calls: they need a dashboard session with the owner or admin role, not an API key. An API key gets 401 session_required; a developer or viewer session gets 403 insufficient_role.
The org-wide state exists for spaces that pre-date membership: creating a space through the API or dashboard automatically writes a member row for the creator, so a new space is member-only from the moment it exists.

Python SDK

list_spaces, create_space, and delete_space are all wrapped (with async_ variants). Membership management is dashboard/session-only, so it is deliberately not in the API-key SDK.

Error responses

See the full error reference.

Next steps

Memories API

Store and manage memories.

Errors

The complete error code reference.