API 参考

Sidecars

9 个接口 · 概览

GET/v1/spaces/{sid}/namespaces

Sidecar namespaces that one member alone writes in this space
Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$

响应

  • 200
    Owned namespaces
    object
    › 展开字段
    • itemsNamespaceOwner[]必填
      › 3 个字段
      • namespacestring必填
      • ownerUser必填
        › 4 个字段
        • idstring必填
        • emailstring必填
          Agents have an address at agents.invalid: it finds them for invites, no mail goes there
        • display_namestring必填
        • kindstring必填
          humanagent
      • created_atTimestamp必填
  • 4xx/5xx
    Error
    Error
请求示例
curl "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/namespaces" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"
响应示例 · 200
{
  "items": [
    {
      "namespace": "x-acme.qc",
      "owner": {},
      "created_at": "2026-11-14T09:30:00Z"
    }
  ]
}

PUT/v1/spaces/{sid}/namespaces/{ns}

Let only this member write the namespace here (manager). ai.generation or a custom x-… namespace.
Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • nsstring必填

请求体 application/json

  • owner_idstring必填

响应

请求示例
curl -X PUT "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/namespaces/x-acme.qc" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"owner_id":"nod_01JD7Q3A5C7E9G1J3K5M7P9R2S"}'
响应示例 · 200
{
  "namespace": "x-acme.qc",
  "owner": {
    "id": "id",
    "email": "[email protected]",
    "display_name": "display_name",
    "kind": "human"
  },
  "created_at": "2026-11-14T09:30:00Z"
}

DELETE/v1/spaces/{sid}/namespaces/{ns}

Let every editor write the namespace again (manager)
Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • nsstring必填

响应

  • 204
    Released
  • 4xx/5xx
    Error
    Error
请求示例
curl -X DELETE "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/namespaces/x-acme.qc" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"

GET/v1/spaces/{sid}/versions/{vid}/sidecars

Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • vidstring必填
    ^ver_[0-9A-HJKMNP-TV-Z]{26}$

响应

  • 200
    Sidecars
    object
    › 展开字段
    • itemsSidecar[]
      › 5 个字段
      • namespacestring必填
      • docobject必填
      • schema_versioninteger必填
      • producerobject | null必填
        Who wrote it, e.g. {"name":"cliptap","version":"1.2","inherited_from":"ver_..."}
        必填
      • updated_atTimestamp必填
  • 4xx/5xx
    Error
    Error
请求示例
curl "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/versions/ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T/sidecars" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"
响应示例 · 200
{
  "items": [
    {
      "namespace": "x-acme.qc",
      "doc": {},
      "schema_version": 1,
      "producer": {},
      "updated_at": "2026-11-14T09:30:00Z"
    }
  ]
}

GET/v1/spaces/{sid}/versions/{vid}/sidecars/{ns}

Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • vidstring必填
    ^ver_[0-9A-HJKMNP-TV-Z]{26}$
  • nsstring必填

响应

请求示例
curl "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/versions/ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T/sidecars/x-acme.qc" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"
响应示例 · 200
{
  "namespace": "x-acme.qc",
  "doc": {},
  "schema_version": 1,
  "producer": {},
  "updated_at": "2026-11-14T09:30:00Z"
}

PUT/v1/spaces/{sid}/versions/{vid}/sidecars/{ns}

Write a sidecar (editor). Built-in namespaces are validated against proto/sidecar/.json; custom ones must start with x-; core and media are server-written.
Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • vidstring必填
    ^ver_[0-9A-HJKMNP-TV-Z]{26}$
  • nsstring必填

请求体PutSidecarRequest application/json

  • docobject必填
  • schema_versioninteger
    default 1
  • producerobject

响应

请求示例
curl -X PUT "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/versions/ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T/sidecars/x-acme.qc" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"doc":{}}'
响应示例 · 200
{
  "namespace": "x-acme.qc",
  "doc": {},
  "schema_version": 1,
  "producer": {},
  "updated_at": "2026-11-14T09:30:00Z"
}

DELETE/v1/spaces/{sid}/versions/{vid}/sidecars/{ns}

Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • vidstring必填
    ^ver_[0-9A-HJKMNP-TV-Z]{26}$
  • nsstring必填

响应

  • 204
    Deleted
  • 4xx/5xx
    Error
    Error
请求示例
curl -X DELETE "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/versions/ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T/sidecars/x-acme.qc" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"

GET/v1/spaces/{sid}/versions/{vid}/renditions/{kind}

Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • vidstring必填
    ^ver_[0-9A-HJKMNP-TV-Z]{26}$
  • kindstring必填

响应

请求示例
curl "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/versions/ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T/renditions/kind" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"
响应示例 · 200
{
  "kind": "kind",
  "mime": "video/quicktime",
  "manifest_hash": "manifest_hash",
  "size": 734003200
}

PUT/v1/spaces/{sid}/versions/{vid}/renditions/{kind}

Attach a derived file (chunks uploaded through an upload session first)
Bearer 令牌

参数 · 路径

  • sidstring必填
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • vidstring必填
    ^ver_[0-9A-HJKMNP-TV-Z]{26}$
  • kindstring必填

请求体PutRenditionRequest application/json

  • manifestManifest必填
    › 3 个字段
    • algostring必填
      fastcdc-v1
    • sizeinteger必填
    • chunksChunkRef[]必填
      › 3 个字段
      • hashHash必填
        ^[0-9a-f]{64}$
      • offsetinteger必填
      • leninteger必填
  • mimestring必填

响应

请求示例
curl -X PUT "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/versions/ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T/renditions/kind" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"manifest":{"algo":"fastcdc-v1","size":734003200,"chunks":[]},"mime":"video/quicktime"}'
响应示例 · 200
{
  "kind": "kind",
  "mime": "video/quicktime",
  "manifest_hash": "manifest_hash",
  "size": 734003200
}