gcai chat create
Create chat completion
gcai chat create <message> [--file-ids <value>…] [--playbook-ids <value>…] [--playbook-id <value>] [--skill-ids <value>…] [--chat-id <value>] [--project-id <value>] [--company-id <value>] [--async] [--timeout <seconds>]
| Flag | Type | Required | Description |
|---|---|---|---|
--file-ids <value>… | string[] | Optional uploaded file IDs to attach as context for this completion. Upload files first via POST /files. | |
--playbook-ids <value>… | string[] | Optional playbook IDs to ground the completion in (up to 20). The model uses each playbook’s checks and guidance to structure its review of the attached files. Discover playbooks via GET /playbooks. Org-scoped keys can use org-visible and official playbooks. | |
--playbook-id <value> | string | Deprecated and no longer accepted. Use playbook_ids (an array) instead. Requests that include this field are rejected with a 400 so the playbook is never silently dropped. | |
--skill-ids <value>… | string[] | Optional skill IDs to run on the first turn. Each skill’s instructions are injected as context for this completion. Discover skills via GET /skills. Only valid when starting a new chat; omit them when continuing with chat_id. | |
--chat-id <value> | string | Optional chat ID to continue an existing conversation, from the chat_id of a prior completion. Omit to start a new chat. Conversation state is held server-side, so send only your new message (plus any new file_ids); do not re-send prior turns or previously returned documents/emails/diagrams. Only one turn may be in flight per chat at a time. See Multi-turn Conversations. | |
--project-id <value> | string | Optional project to file the chat into, so it is browsable under GET /projects/{id}/chats. Requires write access to the project. The chat becomes visible in the project once you materialize it. Discover projects via GET /projects. | |
--company-id <value> | string | Optional company profile to ground the completion in, so the model has that company’s context (industry, jurisdiction, regulations, risk posture). Discover company profiles via GET /company-profiles. The company is fixed for the life of a chat. On a new chat, supply this to target a specific company (the only way to ground against a particular one in a multi-company organization); when omitted, a company is auto-resolved: user-scoped keys use the caller’s active (default) company, and org-scoped keys use the organization’s sole company, or none when there are several. When continuing a chat with chat_id, omit this to reuse the chat’s company. You may echo the same company_id, but a different one is rejected with 409 (start a new chat to use a different company). | |
--async | boolean | Return the pending job immediately instead of waiting. | |
--timeout <seconds> | number | Client-side wait bound before giving up (default 300). |
POST /chat/completions — see Create chat completion for full parameter semantics.
gcai chat materialize
Materialize an API chat
gcai chat materialize <id> [--project-id <value>]
| Flag | Type | Required | Description |
|---|---|---|---|
--project-id <value> | string | File the chat into this project while materializing it. Requires write access to the project. Omit to leave the chat unfiled. |
POST /chat/{id}/materialize — see Materialize an API chat for full parameter semantics.
gcai chat search
Search chats
gcai chat search <q> [--limit <number>]
| Flag | Type | Required | Description |
|---|---|---|---|
--limit <number> | number | Max chats to return (default 20, max 50) |
GET /chat/search — see Search chats for full parameter semantics.