---
# @generated by sylphx-gen 0.1.0 from contracts@fb95f0c42a0ec5d8e3cb694c0054b529c0b24b184112c65ef60c9044b4ce61f9. Do not edit.
title: "Get a space"
description: "`knowledge.spaces.get` (GET /v1/{name}): Gets a space."
type: reference
product: knowledge
summary: "Gets a space."
updated: 2026-09-28
nav: false
---

Gets a space.

**Not available yet.** Sylphx Knowledge is declared in the registry but no backend serves it: every call answers `501` with the problem code `UNIMPLEMENTED`.

- **Path** `GET https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/spaces/space`
- **Scope** `knowledge:read`
- **Effect** `read` — nothing is written.
- **Collection** [spaces](/docs/api/spaces)

## Request

| Field | Type | What it is |
| --- | --- | --- |
| `name` | `string` | The name of the space to get. Required. |

## Response

| Field | Type | What it is |
| --- | --- | --- |
| `name` | `string` | `orgs/{org}/projects/{project}/envs/{env}/spaces/{space}`. |
| `uid` | `string` | `spc_<26 base32>`; never reused. Output only. |
| `meta` | `ResourceMeta` | Resource metadata. |
| `spec` | `SpaceSpec` | Desired state. Required. |
| `status` | `SpaceStatus` | Observed state. Output only. |

### ResourceMeta

| Field | Type | What it is |
| --- | --- | --- |
| `generation` | `int64` | Increases by one on every change to `spec`. Output only. |
| `etag` | `string` | Strong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as `If-Match` or `etag` to make Update and Delete conditional; a mismatch fails with ABORTED / 409 `ETAG_MISMATCH`. Output only. |
| `create_time` | `timestamp` | When the Resource was created. Output only. |
| `update_time` | `timestamp` | When the Resource last changed. Output only. |
| `delete_time` | `timestamp` | Set while the Resource is being deleted. Output only. |
| `labels` | `map<string, string>` | Caller-writable, indexed labels (AIP-122 label rules). |
| `annotations` | `map<string, string>` | Caller-writable, unindexed annotations. |
| `display_name` | `string` | Caller-writable human-readable name. |
| `creator` | `string` | The principal that created the Resource. Output only. |

### SpaceSpec

| Field | Type | What it is |
| --- | --- | --- |
| `kind` | `SpaceKind` | What the space holds. Required. One of `workspace`, `project`, `team`, `end_user`, `agent`, `shared`. |
| `parent` | `string` | The space this one inherits grants from, for example a project space under its workspace space. A reader of the parent reads this space. |
| `owner` | `string` | The principal a private space belongs to, as a share subject: `end_user:<id>` for `SPACE_KIND_END_USER`, `agent:<id>` or `agent:<id>/end_user:<id>` for `SPACE_KIND_AGENT`. Empty for a shared space. The owner is granted `owner` on the space. |
| `grants` | `SpaceGrant[]` | Who may read and write the space, beyond `owner` and what `parent` grants; at most 200. A repeated grant is stored once. |
| `sensitive` | `bool` | The space holds customer personal data. Its records are never sent in embeddings outside the cell's model routes, and enter a context pack or an answer that spans spaces only for a reader that holds `reader` on this space directly. Only deterministic entity matches apply to it. |
| `schemas` | `string[]` | The Knowledge Schemas whose types the space accepts, as resource names; the core schema is always accepted. At most 20. |

### SpaceStatus

| Field | Type | What it is |
| --- | --- | --- |
| `observed_generation` | `int64` | The generation this status was computed from. Output only. |
| `conditions` | `Condition[]` | Ready, Reconciling, Stalled. Output only. |
| `episode_count` | `int64` | The number of episodes in the space. Output only. |
| `fact_count` | `int64` | The number of current facts in the space. Output only. |
| `last_write_time` | `timestamp` | When a record of the space was last written. Output only. |

### SpaceGrant

| Field | Type | What it is |
| --- | --- | --- |
| `role` | `SpaceRole` | The role granted. Required. One of `reader`, `writer`, `owner`. |
| `subject` | `string` | The share subject: `user:<id>`, `end_user:<id>`, `agent:<id>`, or a userset such as `workspace:<id>#member`. Required. |

### Condition

| Field | Type | What it is |
| --- | --- | --- |
| `type` | `string` | The condition type, for example `Ready`. |
| `status` | `ConditionStatus` | Whether the condition holds. One of `true`, `false`, `unknown`. |
| `observed_generation` | `int64` | The generation this observation was made against. |
| `reason` | `string` | A machine-readable UpperCamelCase reason. |
| `message` | `string` | A customer-safe human-readable message. |
| `severity` | `Severity` | How severe a FALSE condition is. One of `info`, `warning`, `error`. |
| `transition_time` | `timestamp` | When `status` last changed. |

## Errors

- [`UNAUTHENTICATED`](/docs/api/errors/UNAUTHENTICATED) — No valid key or token was presented.
- [`PERMISSION_DENIED`](/docs/api/errors/PERMISSION_DENIED) — The key lacks the method's permission.
- [`RESOURCE_NOT_FOUND`](/docs/api/errors/RESOURCE_NOT_FOUND) — The named Resource does not exist or is not visible.

Every error arrives in the body [Errors](/docs/platform/errors) describes.

## Examples

**cURL**

```curl
curl "https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/spaces/space" \
  -H "Authorization: Bearer $SYLPHX_API_KEY"
```

**TypeScript**

```ts
const response = await sylphx.knowledge.spaces.get({ name: 'orgs/acme/projects/shop/envs/production/spaces/space' })
```

**Rust**

```rust
let mut req = sylphx::knowledge::GetSpaceRequest::default();
req.name = "orgs/acme/projects/shop/envs/production/spaces/space".to_string();
let response = sx.knowledge().spaces().get(req).await?;
```

**CLI**

```bash
sylphx knowledge spaces get orgs/acme/projects/shop/envs/production/spaces/space
```

**MCP**

```json
{ "method_id": "knowledge.spaces.get", "args": {"name":"orgs/acme/projects/shop/envs/production/spaces/space"} }
```
