Saltar al contenido principal
DocumentaciónMemoria · console.latam.ccsio.ai

Connectors

The channel bindings of the memory connectors.

Menú de la documentación

Las descripciones de las operaciones y los campos son las del contrato, en inglés.

GET/memory/v1/connectors

List channel bindings

Credencial
API key
Permiso
memory.read

Lists the channel bindings for the tenant. The upsert stores a zero ResourceRef because NewChannelBinding does not validate the five structural references, so the bindings carry zero structural references and they render empty: each is an empty {ID, Version} pair, modeled by the MemoryConnectorResourceRef view (canonical form or the empty string), while the erase dispatch's ResourceRef stays strict.

curl
curl "https://console.latam.ccsio.ai/memory/v1/connectors?tenant=<tenant>" \
  -H "Authorization: Bearer $CCSIO_API_KEY"

Parámetros

NombreEnDescripción
X-Request-ID
opcional
headerstring

Optional request ULID. A valid ULID (upper or lowercase) is honored; when the header is absent or invalid, the runtime mints the id. The response X-Request-ID header carries the canonical uppercase form.

tenant
obligatorio
querystring

The tenant (c6 identifier).

Respuestas

  • 200

    The channel bindings.

    Esquema
    MemoryConnectorsResponse
    • bindingsarray of MemoryChannelBinding or nullobligatorio
      • ConnectionRefobjectobligatorio

        The connector channel binding's structural reference (a c6 id/version pair) as it renders on the wire. PascalCase — the untagged domain.ResourceRef renders as {ID, Version}. The upsert stores a zero ResourceRef (NewChannelBinding does not validate the refs), so each member admits the canonical C6 form OR the empty string. The erase dispatch's ResourceRef stays strict and does not reuse this view.

        • IDone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^[a-z][a-z0-9._-]{0,127}$

          • #2stringopcional

            always ""

        • Versionone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})$

          • #2stringopcional

            always ""

      • ChannelIDstringobligatorio

        pattern ^[a-z][a-z0-9._-]{0,127}$

      • ConversationIDstringobligatorio

        pattern ^[a-z][a-z0-9._-]{0,127}$

      • PrincipalLinkRefobjectobligatorio

        The connector channel binding's structural reference (a c6 id/version pair) as it renders on the wire. PascalCase — the untagged domain.ResourceRef renders as {ID, Version}. The upsert stores a zero ResourceRef (NewChannelBinding does not validate the refs), so each member admits the canonical C6 form OR the empty string. The erase dispatch's ResourceRef stays strict and does not reuse this view.

        • IDone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^[a-z][a-z0-9._-]{0,127}$

          • #2stringopcional

            always ""

        • Versionone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})$

          • #2stringopcional

            always ""

      • PrincipalIDstringobligatorio

        pattern ^[a-z][a-z0-9._-]{0,127}$

      • RouteRefobjectobligatorio

        The connector channel binding's structural reference (a c6 id/version pair) as it renders on the wire. PascalCase — the untagged domain.ResourceRef renders as {ID, Version}. The upsert stores a zero ResourceRef (NewChannelBinding does not validate the refs), so each member admits the canonical C6 form OR the empty string. The erase dispatch's ResourceRef stays strict and does not reuse this view.

        • IDone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^[a-z][a-z0-9._-]{0,127}$

          • #2stringopcional

            always ""

        • Versionone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})$

          • #2stringopcional

            always ""

      • AgentRefobjectobligatorio

        The connector channel binding's structural reference (a c6 id/version pair) as it renders on the wire. PascalCase — the untagged domain.ResourceRef renders as {ID, Version}. The upsert stores a zero ResourceRef (NewChannelBinding does not validate the refs), so each member admits the canonical C6 form OR the empty string. The erase dispatch's ResourceRef stays strict and does not reuse this view.

        • IDone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^[a-z][a-z0-9._-]{0,127}$

          • #2stringopcional

            always ""

        • Versionone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})$

          • #2stringopcional

            always ""

      • SessionRefobjectobligatorio

        The connector channel binding's structural reference (a c6 id/version pair) as it renders on the wire. PascalCase — the untagged domain.ResourceRef renders as {ID, Version}. The upsert stores a zero ResourceRef (NewChannelBinding does not validate the refs), so each member admits the canonical C6 form OR the empty string. The erase dispatch's ResourceRef stays strict and does not reuse this view.

        • IDone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^[a-z][a-z0-9._-]{0,127}$

          • #2stringopcional

            always ""

        • Versionone ofobligatorio

          Uno de

          • #1stringopcional

            pattern ^(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})\.(0|[1-9][0-9]{0,5})$

          • #2stringopcional

            always ""

      • Allowbooleanobligatorio
      • FreshUntilstring (utc-second)obligatorio

        pattern ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$

      • Epochstringobligatorio

        pattern ^[a-z][a-z0-9._-]{0,127}$

      • InitialCursorintegerobligatorio

        0 to 9007199254740991

      • MaxGapintegerobligatorio

        1 to 128

      • MaxBufferedintegerobligatorio

        1 to 128

  • 400

    Client refusal unrelated to authentication, including malformed input, a denied or failed request.

  • 401

    The request carries no credential, more than one, or one the platform does not accept, and is refused before the operation runs; `error.code` says why. Supply exactly one credential. Codes: invalid-request (no credential, or both Authorization:

    Leer más

    Bearer and x-api-key), api-key-invalid (a value that is not a platform API key, or a key of a kind the platform does not accept), api-key-unknown, api-key-revoked, api-key-expired, bootstrap-disabled (the one-shot installation credential, once a key exists), token-malformed (a bearer token that is not a JWT), token-algorithm-unsupported, token-signature-invalid, token-claim-invalid, token-issuer-mismatch, token-audience-mismatch, token-expired, token-not-yet-valid, issuer-untrusted, issuer-residency-mismatch (the issuer belongs to another plane), issuer-resolution-unknown, jwks-unavailable, jwks-key-not-found, staff-token-inactive (a platform operator's token), staff-not-operator, staff-directory-unavailable, identity-not-provisioned (a verified identity with no account on this plane), organization-not-found (a verified identity or key whose organization this plane does not know), internal-error (a fault while the credential is checked is refused too, fail closed), context-cancelled

  • 402

    The organization has to pay first: its standing is payment_required.

    Leer más

    The request boundary applies this payment gate to every route except an organization's billing routes, the caller's own context, organization list, onboarding, session report and personal keys, the public routes, and the routes of platform operators, who administer an organization that has to pay. The operations the gate covers declare this response. On /v1 the refusal is rendered in the OpenAI error format. Code: payment-required

  • 403

    The credential is valid but may not do this here; the request is refused by the request boundary before the handler runs, and `error.code` says which refusal. An operation may add codes of its own.

    Leer más

    Codes: policy-denied (no role of the caller holds the permission the operation needs, or the credential class may not call it: a personal API key outside inference and MCP, a route that needs a signed-in person, the one-shot installation credential outside its three steps), tenant-mismatch (the organization a path, query, body or X-Tenant header names is not the caller's own), organization-provisioning, organization-suspended, organization-disabled, organization-deleted (the state of the caller's organization), user-disabled, residency-mismatch (the organization lives on another plane), organization-selection-required (a caller with more than one organization, or a platform operator, must name one in X-Organization-Id), organization-not-selectable, no-active-organization-membership, team-not-selectable (the X-Organization-Id or X-Team-Id the caller sent does not name an organization or team it may act in), identity-managed-by-provider (a person who is not a platform operator changes an organization's status, which belongs to the identity provider), support-session-required (a platform operator reads an organization's data without an open support session)

  • 405

    The path is claimed but the request method is not allowed. Go ServeMux returns its standard plain-text response and lists permitted methods in Allow.

  • 500

    Platform failure, rendered without internal cause details.

POST/memory/v1/connectors

Upsert a channel binding

Credencial
API key
Permiso
memory.manage
Cuerpo de la solicitud
Cuerpo de hasta 1 MiB

Upserts a channel binding for the tenant. Idempotent on (tenant, channel, conversation, epoch). The request body is capped at 1048576 bytes; over-cap is 400 invalid-request, never 413.

curl
curl -X POST "https://console.latam.ccsio.ai/memory/v1/connectors" \
  -H "Authorization: Bearer $CCSIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "tenant": "string",
  "channel_id": "string",
  "conversation_id": "string",
  "epoch": "string"
}'
Construido con los campos obligatorios del esquema: reemplaza los valores.

Parámetros

NombreEnDescripción
X-Request-ID
opcional
headerstring

Optional request ULID. A valid ULID (upper or lowercase) is honored; when the header is absent or invalid, the runtime mints the id. The response X-Request-ID header carries the canonical uppercase form.

Cuerpo de la solicitud application/json

MemoryConnectorUpsertRequest
  • tenantstringobligatorio

    pattern ^[a-z][a-z0-9._-]{0,127}$

  • channel_idstringobligatorio

    pattern ^[a-z][a-z0-9._-]{0,127}$

  • conversation_idstringobligatorio

    pattern ^[a-z][a-z0-9._-]{0,127}$

  • epochstringobligatorio

    pattern ^[a-z][a-z0-9._-]{0,127}$

Respuestas

  • 200

    The upsert acknowledgement.

    Esquema
    • statusstringobligatorio

      always "upserted"

  • 400

    Client refusal unrelated to authentication, including malformed input, a denied or failed request.

  • 401

    The request carries no credential, more than one, or one the platform does not accept, and is refused before the operation runs; `error.code` says why. Supply exactly one credential. Codes: invalid-request (no credential, or both Authorization:

    Leer más

    Bearer and x-api-key), api-key-invalid (a value that is not a platform API key, or a key of a kind the platform does not accept), api-key-unknown, api-key-revoked, api-key-expired, bootstrap-disabled (the one-shot installation credential, once a key exists), token-malformed (a bearer token that is not a JWT), token-algorithm-unsupported, token-signature-invalid, token-claim-invalid, token-issuer-mismatch, token-audience-mismatch, token-expired, token-not-yet-valid, issuer-untrusted, issuer-residency-mismatch (the issuer belongs to another plane), issuer-resolution-unknown, jwks-unavailable, jwks-key-not-found, staff-token-inactive (a platform operator's token), staff-not-operator, staff-directory-unavailable, identity-not-provisioned (a verified identity with no account on this plane), organization-not-found (a verified identity or key whose organization this plane does not know), internal-error (a fault while the credential is checked is refused too, fail closed), context-cancelled

  • 402

    The organization has to pay first: its standing is payment_required.

    Leer más

    The request boundary applies this payment gate to every route except an organization's billing routes, the caller's own context, organization list, onboarding, session report and personal keys, the public routes, and the routes of platform operators, who administer an organization that has to pay. The operations the gate covers declare this response. On /v1 the refusal is rendered in the OpenAI error format. Code: payment-required

  • 403

    The credential is valid but may not do this here; the request is refused by the request boundary before the handler runs, and `error.code` says which refusal. An operation may add codes of its own.

    Leer más

    Codes: policy-denied (no role of the caller holds the permission the operation needs, or the credential class may not call it: a personal API key outside inference and MCP, a route that needs a signed-in person, the one-shot installation credential outside its three steps), tenant-mismatch (the organization a path, query, body or X-Tenant header names is not the caller's own), organization-provisioning, organization-suspended, organization-disabled, organization-deleted (the state of the caller's organization), user-disabled, residency-mismatch (the organization lives on another plane), organization-selection-required (a caller with more than one organization, or a platform operator, must name one in X-Organization-Id), organization-not-selectable, no-active-organization-membership, team-not-selectable (the X-Organization-Id or X-Team-Id the caller sent does not name an organization or team it may act in), identity-managed-by-provider (a person who is not a platform operator changes an organization's status, which belongs to the identity provider), support-session-required (a platform operator reads an organization's data without an open support session)

  • 405

    The path is claimed but the request method is not allowed. Go ServeMux returns its standard plain-text response and lists permitted methods in Allow.

  • 500

    Platform failure, rendered without internal cause details.

Generado a partir de los contratos de la plataforma en el commit 5f833620.

Explora la plataforma

Obtén tu primera key API

El registro está abierto. Cuatro pasos hasta tu primera llamada: crea tu cuenta, crea tu organización, crea tu API key y empieza a usarla.

  1. 01Crea tu cuenta
  2. 02Crea tu organización
  3. 03Crea tu API key
  4. 04Empieza a usarla