Chat

Materialize an API chat

Surface an API-created chat into chat history and return a shareable deep link.

Chats created through POST /chat/completions stay out of chat history (both the GC AI web app and chat search) until you materialize them. Use the chat_id from a completed completion response. The endpoint is idempotent. Calling it again on an already-materialized chat returns the same link without side effects.

Pass project_id to file the chat into a project at the same time, so it is browsable under GET /projects/{id}/chats. This requires write access to the project and files a chat that is already materialized.

Authorization: User-scoped keys can only materialize chats they created. Organization-scoped keys can only materialize chats created by other organization-scoped keys.

Who can use the chat afterwards: An organization-scoped key shares the chat with the whole organization, and every member can continue it in the web app. A user-scoped key keeps the chat owned by that user, so teammates reach it only through the normal sharing rules.

See Chat Visibility for how this works.

post/chat/{id}/materialize

Request

Path parameters

idstring uuid required

The chat ID

Request body

project_idstring uuid

File the chat into this project while materializing it. Requires write access to the project. Omit to leave the chat unfiled.

Response

Chat materialized (or already materialized)

idstring uuid required

The chat ID

titlestring nullable required

The chat title, if generated

chat_urlstring uri required

Deep link to open the chat in the GC AI web UI

materialized_atstring date-time required

When the chat was materialized

project_idstring uuid nullable required

Project the chat is filed under, or null if unfiled

Changes

No recorded changes to this operation across all 1 revision of this API.