Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,10 @@ provided. Requires `project_id`.
name: @"--model")
{
Description = @"AI model to use for editing. Accepts a canonical model id
(e.g. `claude-opus-4.8`, `claude-sonnet-4.6`, `gpt-5.5`,
`gemini-3.5-flash`) or a friendly alias (`auto`, `claude-opus`,
`claude-sonnet`, `claude-haiku`, `gpt`, `gemini-pro`,
`gemini-flash`). Call [GET /agent/models](#operation/listAgentModels)
to discover the current set of supported models and aliases.
(e.g. `claude-opus-4.8`) or a friendly alias that tracks the
stable version of a family (e.g. `claude-opus`). Call
[GET /agent/models](#operation/listAgentModels) for the current
set of supported models and aliases.

Defaults to `auto` when omitted, which selects a recommended
model for your account.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,10 @@ the latest
passing `claude-opus` always routes to whichever Claude Opus version Descript
currently recommends.

The catalog changes as models launch and retire, so this endpoint's live response
is the source of truth — the example below is an abridged illustration, not the
full list.

Cost tiers are coarse buckets — `low`, `medium`, `high` — useful for showing
users a relative price/performance signal. Exact pricing is reported per job via
the `ai_credits_used` field on [GET /jobs/{job_id}](#operation/getJob).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -722,11 +722,10 @@ partial void ProcessAgentEditJobResponseContent(
/// </param>
/// <param name="model">
/// AI model to use for editing. Accepts a canonical model id<br/>
/// (e.g. `claude-opus-4.8`, `claude-sonnet-4.6`, `gpt-5.5`,<br/>
/// `gemini-3.5-flash`) or a friendly alias (`auto`, `claude-opus`,<br/>
/// `claude-sonnet`, `claude-haiku`, `gpt`, `gemini-pro`,<br/>
/// `gemini-flash`). Call [GET /agent/models](#operation/listAgentModels)<br/>
/// to discover the current set of supported models and aliases.<br/>
/// (e.g. `claude-opus-4.8`) or a friendly alias that tracks the<br/>
/// stable version of a family (e.g. `claude-opus`). Call<br/>
/// [GET /agent/models](#operation/listAgentModels) for the current<br/>
/// set of supported models and aliases.<br/>
/// Defaults to `auto` when omitted, which selects a recommended<br/>
/// model for your account.
/// </param>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,9 @@ partial void ProcessListAgentModelsResponseContent(
/// recommended model for a given tier without chasing version bumps — for example,<br/>
/// passing `claude-opus` always routes to whichever Claude Opus version Descript<br/>
/// currently recommends.<br/>
/// The catalog changes as models launch and retire, so this endpoint's live response<br/>
/// is the source of truth — the example below is an abridged illustration, not the<br/>
/// full list.<br/>
/// Cost tiers are coarse buckets — `low`, `medium`, `high` — useful for showing<br/>
/// users a relative price/performance signal. Exact pricing is reported per job via<br/>
/// the `ai_credits_used` field on [GET /jobs/{job_id}](#operation/getJob).<br/>
Expand Down Expand Up @@ -79,6 +82,9 @@ partial void ProcessListAgentModelsResponseContent(
/// recommended model for a given tier without chasing version bumps — for example,<br/>
/// passing `claude-opus` always routes to whichever Claude Opus version Descript<br/>
/// currently recommends.<br/>
/// The catalog changes as models launch and retire, so this endpoint's live response<br/>
/// is the source of truth — the example below is an abridged illustration, not the<br/>
/// full list.<br/>
/// Cost tiers are coarse buckets — `low`, `medium`, `high` — useful for showing<br/>
/// users a relative price/performance signal. Exact pricing is reported per job via<br/>
/// the `ai_credits_used` field on [GET /jobs/{job_id}](#operation/getJob).<br/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,11 +97,10 @@ public partial interface IApiEndpointsClient
/// </param>
/// <param name="model">
/// AI model to use for editing. Accepts a canonical model id<br/>
/// (e.g. `claude-opus-4.8`, `claude-sonnet-4.6`, `gpt-5.5`,<br/>
/// `gemini-3.5-flash`) or a friendly alias (`auto`, `claude-opus`,<br/>
/// `claude-sonnet`, `claude-haiku`, `gpt`, `gemini-pro`,<br/>
/// `gemini-flash`). Call [GET /agent/models](#operation/listAgentModels)<br/>
/// to discover the current set of supported models and aliases.<br/>
/// (e.g. `claude-opus-4.8`) or a friendly alias that tracks the<br/>
/// stable version of a family (e.g. `claude-opus`). Call<br/>
/// [GET /agent/models](#operation/listAgentModels) for the current<br/>
/// set of supported models and aliases.<br/>
/// Defaults to `auto` when omitted, which selects a recommended<br/>
/// model for your account.
/// </param>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ public partial interface IApiEndpointsClient
/// recommended model for a given tier without chasing version bumps — for example,<br/>
/// passing `claude-opus` always routes to whichever Claude Opus version Descript<br/>
/// currently recommends.<br/>
/// The catalog changes as models launch and retire, so this endpoint's live response<br/>
/// is the source of truth — the example below is an abridged illustration, not the<br/>
/// full list.<br/>
/// Cost tiers are coarse buckets — `low`, `medium`, `high` — useful for showing<br/>
/// users a relative price/performance signal. Exact pricing is reported per job via<br/>
/// the `ai_credits_used` field on [GET /jobs/{job_id}](#operation/getJob).<br/>
Expand All @@ -36,6 +39,9 @@ public partial interface IApiEndpointsClient
/// recommended model for a given tier without chasing version bumps — for example,<br/>
/// passing `claude-opus` always routes to whichever Claude Opus version Descript<br/>
/// currently recommends.<br/>
/// The catalog changes as models launch and retire, so this endpoint's live response<br/>
/// is the source of truth — the example below is an abridged illustration, not the<br/>
/// full list.<br/>
/// Cost tiers are coarse buckets — `low`, `medium`, `high` — useful for showing<br/>
/// users a relative price/performance signal. Exact pricing is reported per job via<br/>
/// the `ai_credits_used` field on [GET /jobs/{job_id}](#operation/getJob).<br/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,10 @@ public sealed partial class AgentEditJobRequest

/// <summary>
/// AI model to use for editing. Accepts a canonical model id<br/>
/// (e.g. `claude-opus-4.8`, `claude-sonnet-4.6`, `gpt-5.5`,<br/>
/// `gemini-3.5-flash`) or a friendly alias (`auto`, `claude-opus`,<br/>
/// `claude-sonnet`, `claude-haiku`, `gpt`, `gemini-pro`,<br/>
/// `gemini-flash`). Call [GET /agent/models](#operation/listAgentModels)<br/>
/// to discover the current set of supported models and aliases.<br/>
/// (e.g. `claude-opus-4.8`) or a friendly alias that tracks the<br/>
/// stable version of a family (e.g. `claude-opus`). Call<br/>
/// [GET /agent/models](#operation/listAgentModels) for the current<br/>
/// set of supported models and aliases.<br/>
/// Defaults to `auto` when omitted, which selects a recommended<br/>
/// model for your account.
/// </summary>
Expand Down Expand Up @@ -128,11 +127,10 @@ public sealed partial class AgentEditJobRequest
/// </param>
/// <param name="model">
/// AI model to use for editing. Accepts a canonical model id<br/>
/// (e.g. `claude-opus-4.8`, `claude-sonnet-4.6`, `gpt-5.5`,<br/>
/// `gemini-3.5-flash`) or a friendly alias (`auto`, `claude-opus`,<br/>
/// `claude-sonnet`, `claude-haiku`, `gpt`, `gemini-pro`,<br/>
/// `gemini-flash`). Call [GET /agent/models](#operation/listAgentModels)<br/>
/// to discover the current set of supported models and aliases.<br/>
/// (e.g. `claude-opus-4.8`) or a friendly alias that tracks the<br/>
/// stable version of a family (e.g. `claude-opus`). Call<br/>
/// [GET /agent/models](#operation/listAgentModels) for the current<br/>
/// set of supported models and aliases.<br/>
/// Defaults to `auto` when omitted, which selects a recommended<br/>
/// model for your account.
/// </param>
Expand Down
4 changes: 2 additions & 2 deletions src/libs/Descript/Generated/autosdk.generated-examples.json
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,9 @@
"Order": 8,
"Title": "List agent models",
"Slug": "listagentmodels",
"Description": "List the currently available agent models and the aliases that resolve to them.\n\nThe \u0060model\u0060 parameter on [POST /jobs/agent](#operation/agentEditJob) accepts any\nvalue listed under \u0060availableModels[].id\u0060 or \u0060aliases[].id\u0060. Aliases let you target\nthe latest\nrecommended model for a given tier without chasing version bumps \u2014 for example,\npassing \u0060claude-opus\u0060 always routes to whichever Claude Opus version Descript\ncurrently recommends.\n\nCost tiers are coarse buckets \u2014 \u0060low\u0060, \u0060medium\u0060, \u0060high\u0060 \u2014 useful for showing\nusers a relative price/performance signal. Exact pricing is reported per job via\nthe \u0060ai_credits_used\u0060 field on [GET /jobs/{job_id}](#operation/getJob).\n\nWhen \u0060model\u0060 is omitted on \u0060POST /jobs/agent\u0060, the request defaults to \u0060auto\u0060, which\nselects a recommended model for your account. \u0060auto\u0060 is a \u0060medium\u0060-cost option. For an\n\u0060auto\u0060 request, \u0060result.resolved_model\u0060 on [GET /jobs/{job_id}](#operation/getJob) reports\n\u0060auto\u0060; for an explicit model or alias it reports the canonical id that ran.",
"Description": "List the currently available agent models and the aliases that resolve to them.\n\nThe \u0060model\u0060 parameter on [POST /jobs/agent](#operation/agentEditJob) accepts any\nvalue listed under \u0060availableModels[].id\u0060 or \u0060aliases[].id\u0060. Aliases let you target\nthe latest\nrecommended model for a given tier without chasing version bumps \u2014 for example,\npassing \u0060claude-opus\u0060 always routes to whichever Claude Opus version Descript\ncurrently recommends.\n\nThe catalog changes as models launch and retire, so this endpoint\u0027s live response\nis the source of truth \u2014 the example below is an abridged illustration, not the\nfull list.\n\nCost tiers are coarse buckets \u2014 \u0060low\u0060, \u0060medium\u0060, \u0060high\u0060 \u2014 useful for showing\nusers a relative price/performance signal. Exact pricing is reported per job via\nthe \u0060ai_credits_used\u0060 field on [GET /jobs/{job_id}](#operation/getJob).\n\nWhen \u0060model\u0060 is omitted on \u0060POST /jobs/agent\u0060, the request defaults to \u0060auto\u0060, which\nselects a recommended model for your account. \u0060auto\u0060 is a \u0060medium\u0060-cost option. For an\n\u0060auto\u0060 request, \u0060result.resolved_model\u0060 on [GET /jobs/{job_id}](#operation/getJob) reports\n\u0060auto\u0060; for an explicit model or alias it reports the canonical id that ran.",
"Language": "csharp",
"Code": "using var client = new DescriptClient(apiKey);\nvar response = await client.ApiEndpoints.ListAgentModelsAsync();\n\n// Example response:\n// {\n// \u0022availableModels\u0022: [\n// {\n// \u0022id\u0022: \u0022auto\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-opus-4.8\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-opus-4.7\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-opus-4.6\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-sonnet-5\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-sonnet-4.6\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-haiku-4.5\u0022,\n// \u0022cost\u0022: \u0022low\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gpt-5.5\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gpt-5.4\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gemini-3.5-flash\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gemini-3.1-pro\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// }\n// ],\n// \u0022aliases\u0022: [\n// {\n// \u0022id\u0022: \u0022claude-opus\u0022,\n// \u0022resolvesTo\u0022: \u0022claude-opus-4.8\u0022,\n// \u0022description\u0022: \u0022Tracks stable Anthropic Claude Opus\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-sonnet\u0022,\n// \u0022resolvesTo\u0022: \u0022claude-sonnet-4.6\u0022,\n// \u0022description\u0022: \u0022Tracks stable Anthropic Claude Sonnet\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-haiku\u0022,\n// \u0022resolvesTo\u0022: \u0022claude-haiku-4.5\u0022,\n// \u0022description\u0022: \u0022Tracks stable Anthropic Claude Haiku\u0022,\n// \u0022cost\u0022: \u0022low\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gpt\u0022,\n// \u0022resolvesTo\u0022: \u0022gpt-5.5\u0022,\n// \u0022description\u0022: \u0022Tracks stable OpenAI GPT\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gemini-pro\u0022,\n// \u0022resolvesTo\u0022: \u0022gemini-3.1-pro\u0022,\n// \u0022description\u0022: \u0022Tracks stable Google Gemini Pro\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022gemini-flash\u0022,\n// \u0022resolvesTo\u0022: \u0022gemini-3.5-flash\u0022,\n// \u0022description\u0022: \u0022Tracks stable Google Gemini Flash\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// }\n// ]\n// }",
"Code": "using var client = new DescriptClient(apiKey);\nvar response = await client.ApiEndpoints.ListAgentModelsAsync();\n\n// Example response:\n// {\n// \u0022availableModels\u0022: [\n// {\n// \u0022id\u0022: \u0022auto\u0022,\n// \u0022cost\u0022: \u0022medium\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-opus-4.8\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// },\n// {\n// \u0022id\u0022: \u0022claude-haiku-4.5\u0022,\n// \u0022cost\u0022: \u0022low\u0022\n// }\n// ],\n// \u0022aliases\u0022: [\n// {\n// \u0022id\u0022: \u0022claude-opus\u0022,\n// \u0022resolvesTo\u0022: \u0022claude-opus-4.8\u0022,\n// \u0022description\u0022: \u0022Tracks stable Anthropic Claude Opus\u0022,\n// \u0022cost\u0022: \u0022high\u0022\n// }\n// ]\n// }",
"Format": "sdk",
"OperationId": "listAgentModels",
"Setup": "This example assumes \u0060using Descript;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
Expand Down
51 changes: 9 additions & 42 deletions src/libs/Descript/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -765,11 +765,10 @@ paths:
type: string
description: |
AI model to use for editing. Accepts a canonical model id
(e.g. `claude-opus-4.8`, `claude-sonnet-4.6`, `gpt-5.5`,
`gemini-3.5-flash`) or a friendly alias (`auto`, `claude-opus`,
`claude-sonnet`, `claude-haiku`, `gpt`, `gemini-pro`,
`gemini-flash`). Call [GET /agent/models](#operation/listAgentModels)
to discover the current set of supported models and aliases.
(e.g. `claude-opus-4.8`) or a friendly alias that tracks the
stable version of a family (e.g. `claude-opus`). Call
[GET /agent/models](#operation/listAgentModels) for the current
set of supported models and aliases.

Defaults to `auto` when omitted, which selects a recommended
model for your account.
Expand Down Expand Up @@ -985,6 +984,10 @@ paths:
passing `claude-opus` always routes to whichever Claude Opus version Descript
currently recommends.

The catalog changes as models launch and retire, so this endpoint's live response
is the source of truth — the example below is an abridged illustration, not the
full list.

Cost tiers are coarse buckets — `low`, `medium`, `high` — useful for showing
users a relative price/performance signal. Exact pricing is reported per job via
the `ai_credits_used` field on [GET /jobs/{job_id}](#operation/getJob).
Expand Down Expand Up @@ -1066,56 +1069,20 @@ paths:
example: high
examples:
default_models:
summary: Current model list and aliases
summary: Abridged example — call the endpoint for the current list
value:
availableModels:
- id: auto
cost: medium
- id: claude-opus-4.8
cost: high
- id: claude-opus-4.7
cost: high
- id: claude-opus-4.6
cost: high
- id: claude-sonnet-5
cost: medium
- id: claude-sonnet-4.6
cost: medium
- id: claude-haiku-4.5
cost: low
- id: gpt-5.5
cost: high
- id: gpt-5.4
cost: medium
- id: gemini-3.5-flash
cost: medium
- id: gemini-3.1-pro
cost: high
aliases:
- id: claude-opus
resolvesTo: claude-opus-4.8
description: Tracks stable Anthropic Claude Opus
cost: high
- id: claude-sonnet
resolvesTo: claude-sonnet-4.6
description: Tracks stable Anthropic Claude Sonnet
cost: medium
- id: claude-haiku
resolvesTo: claude-haiku-4.5
description: Tracks stable Anthropic Claude Haiku
cost: low
- id: gpt
resolvesTo: gpt-5.5
description: Tracks stable OpenAI GPT
cost: high
- id: gemini-pro
resolvesTo: gemini-3.1-pro
description: Tracks stable Google Gemini Pro
cost: high
- id: gemini-flash
resolvesTo: gemini-3.5-flash
description: Tracks stable Google Gemini Flash
cost: medium
'401':
description: Unauthorized - missing or invalid authentication token
content:
Expand Down