chore: remove chats experiment (#18535)

This commit is contained in:
Danny Kopping
2025-06-25 15:03:32 +02:00
committed by GitHub
parent 9fde8353ad
commit 688d2ee3eb
56 changed files with 16 additions and 7505 deletions

View File

@ -1,372 +0,0 @@
# Chat
## List chats
### Code samples
```shell
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/chats \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
```
`GET /chats`
### Example responses
> 200 Response
```json
[
{
"created_at": "2019-08-24T14:15:22Z",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"title": "string",
"updated_at": "2019-08-24T14:15:22Z"
}
]
```
### Responses
| Status | Meaning | Description | Schema |
|--------|---------------------------------------------------------|-------------|---------------------------------------------------|
| 200 | [OK](https://tools.ietf.org/html/rfc7231#section-6.3.1) | OK | array of [codersdk.Chat](schemas.md#codersdkchat) |
<h3 id="list-chats-responseschema">Response Schema</h3>
Status Code **200**
| Name | Type | Required | Restrictions | Description |
|----------------|-------------------|----------|--------------|-------------|
| `[array item]` | array | false | | |
| `» created_at` | string(date-time) | false | | |
| `» id` | string(uuid) | false | | |
| `» title` | string | false | | |
| `» updated_at` | string(date-time) | false | | |
To perform this operation, you must be authenticated. [Learn more](authentication.md).
## Create a chat
### Code samples
```shell
# Example request using curl
curl -X POST http://coder-server:8080/api/v2/chats \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
```
`POST /chats`
### Example responses
> 201 Response
```json
{
"created_at": "2019-08-24T14:15:22Z",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"title": "string",
"updated_at": "2019-08-24T14:15:22Z"
}
```
### Responses
| Status | Meaning | Description | Schema |
|--------|--------------------------------------------------------------|-------------|------------------------------------------|
| 201 | [Created](https://tools.ietf.org/html/rfc7231#section-6.3.2) | Created | [codersdk.Chat](schemas.md#codersdkchat) |
To perform this operation, you must be authenticated. [Learn more](authentication.md).
## Get a chat
### Code samples
```shell
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/chats/{chat} \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
```
`GET /chats/{chat}`
### Parameters
| Name | In | Type | Required | Description |
|--------|------|--------|----------|-------------|
| `chat` | path | string | true | Chat ID |
### Example responses
> 200 Response
```json
{
"created_at": "2019-08-24T14:15:22Z",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"title": "string",
"updated_at": "2019-08-24T14:15:22Z"
}
```
### Responses
| Status | Meaning | Description | Schema |
|--------|---------------------------------------------------------|-------------|------------------------------------------|
| 200 | [OK](https://tools.ietf.org/html/rfc7231#section-6.3.1) | OK | [codersdk.Chat](schemas.md#codersdkchat) |
To perform this operation, you must be authenticated. [Learn more](authentication.md).
## Get chat messages
### Code samples
```shell
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/chats/{chat}/messages \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
```
`GET /chats/{chat}/messages`
### Parameters
| Name | In | Type | Required | Description |
|--------|------|--------|----------|-------------|
| `chat` | path | string | true | Chat ID |
### Example responses
> 200 Response
```json
[
{
"annotations": [
null
],
"content": "string",
"createdAt": [
0
],
"experimental_attachments": [
{
"contentType": "string",
"name": "string",
"url": "string"
}
],
"id": "string",
"parts": [
{
"data": [
0
],
"details": [
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
],
"mimeType": "string",
"reasoning": "string",
"source": {
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
},
"text": "string",
"toolInvocation": {
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
},
"type": "text"
}
],
"role": "string"
}
]
```
### Responses
| Status | Meaning | Description | Schema |
|--------|---------------------------------------------------------|-------------|---------------------------------------------------|
| 200 | [OK](https://tools.ietf.org/html/rfc7231#section-6.3.1) | OK | array of [aisdk.Message](schemas.md#aisdkmessage) |
<h3 id="get-chat-messages-responseschema">Response Schema</h3>
Status Code **200**
| Name | Type | Required | Restrictions | Description |
|------------------------------|------------------------------------------------------------------|----------|--------------|-------------------------|
| `[array item]` | array | false | | |
| `» annotations` | array | false | | |
| `» content` | string | false | | |
| `» createdAt` | array | false | | |
| `» experimental_attachments` | array | false | | |
| `»» contentType` | string | false | | |
| `»» name` | string | false | | |
| `»» url` | string | false | | |
| `» id` | string | false | | |
| `» parts` | array | false | | |
| `»» data` | array | false | | |
| `»» details` | array | false | | |
| `»»» data` | string | false | | |
| `»»» signature` | string | false | | |
| `»»» text` | string | false | | |
| `»»» type` | string | false | | |
| `»» mimeType` | string | false | | Type: "file" |
| `»» reasoning` | string | false | | Type: "reasoning" |
| `»» source` | [aisdk.SourceInfo](schemas.md#aisdksourceinfo) | false | | Type: "source" |
| `»»» contentType` | string | false | | |
| `»»» data` | string | false | | |
| `»»» metadata` | object | false | | |
| `»»»» [any property]` | any | false | | |
| `»»» uri` | string | false | | |
| `»» text` | string | false | | Type: "text" |
| `»» toolInvocation` | [aisdk.ToolInvocation](schemas.md#aisdktoolinvocation) | false | | Type: "tool-invocation" |
| `»»» args` | any | false | | |
| `»»» result` | any | false | | |
| `»»» state` | [aisdk.ToolInvocationState](schemas.md#aisdktoolinvocationstate) | false | | |
| `»»» step` | integer | false | | |
| `»»» toolCallId` | string | false | | |
| `»»» toolName` | string | false | | |
| `»» type` | [aisdk.PartType](schemas.md#aisdkparttype) | false | | |
| `» role` | string | false | | |
#### Enumerated Values
| Property | Value |
|----------|-------------------|
| `state` | `call` |
| `state` | `partial-call` |
| `state` | `result` |
| `type` | `text` |
| `type` | `reasoning` |
| `type` | `tool-invocation` |
| `type` | `source` |
| `type` | `file` |
| `type` | `step-start` |
To perform this operation, you must be authenticated. [Learn more](authentication.md).
## Create a chat message
### Code samples
```shell
# Example request using curl
curl -X POST http://coder-server:8080/api/v2/chats/{chat}/messages \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
```
`POST /chats/{chat}/messages`
> Body parameter
```json
{
"message": {
"annotations": [
null
],
"content": "string",
"createdAt": [
0
],
"experimental_attachments": [
{
"contentType": "string",
"name": "string",
"url": "string"
}
],
"id": "string",
"parts": [
{
"data": [
0
],
"details": [
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
],
"mimeType": "string",
"reasoning": "string",
"source": {
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
},
"text": "string",
"toolInvocation": {
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
},
"type": "text"
}
],
"role": "string"
},
"model": "string",
"thinking": true
}
```
### Parameters
| Name | In | Type | Required | Description |
|--------|------|----------------------------------------------------------------------------------|----------|--------------|
| `chat` | path | string | true | Chat ID |
| `body` | body | [codersdk.CreateChatMessageRequest](schemas.md#codersdkcreatechatmessagerequest) | true | Request body |
### Example responses
> 200 Response
```json
[
null
]
```
### Responses
| Status | Meaning | Description | Schema |
|--------|---------------------------------------------------------|-------------|--------------------|
| 200 | [OK](https://tools.ietf.org/html/rfc7231#section-6.3.1) | OK | array of undefined |
<h3 id="create-a-chat-message-responseschema">Response Schema</h3>
To perform this operation, you must be authenticated. [Learn more](authentication.md).

View File

@ -161,19 +161,6 @@ curl -X GET http://coder-server:8080/api/v2/deployment/config \
"user": {}
},
"agent_stat_refresh_interval": 0,
"ai": {
"value": {
"providers": [
{
"base_url": "string",
"models": [
"string"
],
"type": "string"
}
]
}
},
"allow_workspace_renames": true,
"autobuild_poll_interval": 0,
"browser_only": true,
@ -586,43 +573,6 @@ curl -X GET http://coder-server:8080/api/v2/deployment/config \
To perform this operation, you must be authenticated. [Learn more](authentication.md).
## Get language models
### Code samples
```shell
# Example request using curl
curl -X GET http://coder-server:8080/api/v2/deployment/llms \
-H 'Accept: application/json' \
-H 'Coder-Session-Token: API_KEY'
```
`GET /deployment/llms`
### Example responses
> 200 Response
```json
{
"models": [
{
"display_name": "string",
"id": "string",
"provider": "string"
}
]
}
```
### Responses
| Status | Meaning | Description | Schema |
|--------|---------------------------------------------------------|-------------|------------------------------------------------------------------------|
| 200 | [OK](https://tools.ietf.org/html/rfc7231#section-6.3.1) | OK | [codersdk.LanguageModelConfig](schemas.md#codersdklanguagemodelconfig) |
To perform this operation, you must be authenticated. [Learn more](authentication.md).
## SSH Config
### Code samples

View File

@ -187,7 +187,6 @@ Status Code **200**
| `resource_type` | `assign_org_role` |
| `resource_type` | `assign_role` |
| `resource_type` | `audit_log` |
| `resource_type` | `chat` |
| `resource_type` | `crypto_key` |
| `resource_type` | `debug_info` |
| `resource_type` | `deployment_config` |
@ -357,7 +356,6 @@ Status Code **200**
| `resource_type` | `assign_org_role` |
| `resource_type` | `assign_role` |
| `resource_type` | `audit_log` |
| `resource_type` | `chat` |
| `resource_type` | `crypto_key` |
| `resource_type` | `debug_info` |
| `resource_type` | `deployment_config` |
@ -527,7 +525,6 @@ Status Code **200**
| `resource_type` | `assign_org_role` |
| `resource_type` | `assign_role` |
| `resource_type` | `audit_log` |
| `resource_type` | `chat` |
| `resource_type` | `crypto_key` |
| `resource_type` | `debug_info` |
| `resource_type` | `deployment_config` |
@ -666,7 +663,6 @@ Status Code **200**
| `resource_type` | `assign_org_role` |
| `resource_type` | `assign_role` |
| `resource_type` | `audit_log` |
| `resource_type` | `chat` |
| `resource_type` | `crypto_key` |
| `resource_type` | `debug_info` |
| `resource_type` | `deployment_config` |
@ -1027,7 +1023,6 @@ Status Code **200**
| `resource_type` | `assign_org_role` |
| `resource_type` | `assign_role` |
| `resource_type` | `audit_log` |
| `resource_type` | `chat` |
| `resource_type` | `crypto_key` |
| `resource_type` | `debug_info` |
| `resource_type` | `deployment_config` |

View File

@ -212,250 +212,6 @@
|--------------------|
| `prebuild_claimed` |
## aisdk.Attachment
```json
{
"contentType": "string",
"name": "string",
"url": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|---------------|--------|----------|--------------|-------------|
| `contentType` | string | false | | |
| `name` | string | false | | |
| `url` | string | false | | |
## aisdk.Message
```json
{
"annotations": [
null
],
"content": "string",
"createdAt": [
0
],
"experimental_attachments": [
{
"contentType": "string",
"name": "string",
"url": "string"
}
],
"id": "string",
"parts": [
{
"data": [
0
],
"details": [
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
],
"mimeType": "string",
"reasoning": "string",
"source": {
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
},
"text": "string",
"toolInvocation": {
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
},
"type": "text"
}
],
"role": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|----------------------------|-----------------------------------------------|----------|--------------|-------------|
| `annotations` | array of undefined | false | | |
| `content` | string | false | | |
| `createdAt` | array of integer | false | | |
| `experimental_attachments` | array of [aisdk.Attachment](#aisdkattachment) | false | | |
| `id` | string | false | | |
| `parts` | array of [aisdk.Part](#aisdkpart) | false | | |
| `role` | string | false | | |
## aisdk.Part
```json
{
"data": [
0
],
"details": [
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
],
"mimeType": "string",
"reasoning": "string",
"source": {
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
},
"text": "string",
"toolInvocation": {
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
},
"type": "text"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|------------------|---------------------------------------------------------|----------|--------------|-------------------------|
| `data` | array of integer | false | | |
| `details` | array of [aisdk.ReasoningDetail](#aisdkreasoningdetail) | false | | |
| `mimeType` | string | false | | Type: "file" |
| `reasoning` | string | false | | Type: "reasoning" |
| `source` | [aisdk.SourceInfo](#aisdksourceinfo) | false | | Type: "source" |
| `text` | string | false | | Type: "text" |
| `toolInvocation` | [aisdk.ToolInvocation](#aisdktoolinvocation) | false | | Type: "tool-invocation" |
| `type` | [aisdk.PartType](#aisdkparttype) | false | | |
## aisdk.PartType
```json
"text"
```
### Properties
#### Enumerated Values
| Value |
|-------------------|
| `text` |
| `reasoning` |
| `tool-invocation` |
| `source` |
| `file` |
| `step-start` |
## aisdk.ReasoningDetail
```json
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|-------------|--------|----------|--------------|-------------|
| `data` | string | false | | |
| `signature` | string | false | | |
| `text` | string | false | | |
| `type` | string | false | | |
## aisdk.SourceInfo
```json
{
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|--------------------|--------|----------|--------------|-------------|
| `contentType` | string | false | | |
| `data` | string | false | | |
| `metadata` | object | false | | |
| » `[any property]` | any | false | | |
| `uri` | string | false | | |
## aisdk.ToolInvocation
```json
{
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|--------------|--------------------------------------------------------|----------|--------------|-------------|
| `args` | any | false | | |
| `result` | any | false | | |
| `state` | [aisdk.ToolInvocationState](#aisdktoolinvocationstate) | false | | |
| `step` | integer | false | | |
| `toolCallId` | string | false | | |
| `toolName` | string | false | | |
## aisdk.ToolInvocationState
```json
"call"
```
### Properties
#### Enumerated Values
| Value |
|----------------|
| `call` |
| `partial-call` |
| `result` |
## coderd.SCIMUser
```json
@ -579,48 +335,6 @@
| `groups` | array of [codersdk.Group](#codersdkgroup) | false | | |
| `users` | array of [codersdk.ReducedUser](#codersdkreduceduser) | false | | |
## codersdk.AIConfig
```json
{
"providers": [
{
"base_url": "string",
"models": [
"string"
],
"type": "string"
}
]
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|-------------|-----------------------------------------------------------------|----------|--------------|-------------|
| `providers` | array of [codersdk.AIProviderConfig](#codersdkaiproviderconfig) | false | | |
## codersdk.AIProviderConfig
```json
{
"base_url": "string",
"models": [
"string"
],
"type": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|------------|-----------------|----------|--------------|-----------------------------------------------------------|
| `base_url` | string | false | | Base URL is the base URL to use for the API provider. |
| `models` | array of string | false | | Models is the list of models to use for the API provider. |
| `type` | string | false | | Type is the type of the API provider. |
## codersdk.APIKey
```json
@ -1354,97 +1068,6 @@ AuthorizationObject can represent a "set" of objects, such as: all workspaces in
| `one_time_passcode` | string | true | | |
| `password` | string | true | | |
## codersdk.Chat
```json
{
"created_at": "2019-08-24T14:15:22Z",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"title": "string",
"updated_at": "2019-08-24T14:15:22Z"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|--------------|--------|----------|--------------|-------------|
| `created_at` | string | false | | |
| `id` | string | false | | |
| `title` | string | false | | |
| `updated_at` | string | false | | |
## codersdk.ChatMessage
```json
{
"annotations": [
null
],
"content": "string",
"createdAt": [
0
],
"experimental_attachments": [
{
"contentType": "string",
"name": "string",
"url": "string"
}
],
"id": "string",
"parts": [
{
"data": [
0
],
"details": [
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
],
"mimeType": "string",
"reasoning": "string",
"source": {
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
},
"text": "string",
"toolInvocation": {
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
},
"type": "text"
}
],
"role": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|----------------------------|-----------------------------------------------|----------|--------------|-------------|
| `annotations` | array of undefined | false | | |
| `content` | string | false | | |
| `createdAt` | array of integer | false | | |
| `experimental_attachments` | array of [aisdk.Attachment](#aisdkattachment) | false | | |
| `id` | string | false | | |
| `parts` | array of [aisdk.Part](#aisdkpart) | false | | |
| `role` | string | false | | |
## codersdk.ConnectionLatency
```json
@ -1477,77 +1100,6 @@ AuthorizationObject can represent a "set" of objects, such as: all workspaces in
| `password` | string | true | | |
| `to_type` | [codersdk.LoginType](#codersdklogintype) | true | | To type is the login type to convert to. |
## codersdk.CreateChatMessageRequest
```json
{
"message": {
"annotations": [
null
],
"content": "string",
"createdAt": [
0
],
"experimental_attachments": [
{
"contentType": "string",
"name": "string",
"url": "string"
}
],
"id": "string",
"parts": [
{
"data": [
0
],
"details": [
{
"data": "string",
"signature": "string",
"text": "string",
"type": "string"
}
],
"mimeType": "string",
"reasoning": "string",
"source": {
"contentType": "string",
"data": "string",
"metadata": {
"property1": null,
"property2": null
},
"uri": "string"
},
"text": "string",
"toolInvocation": {
"args": null,
"result": null,
"state": "call",
"step": 0,
"toolCallId": "string",
"toolName": "string"
},
"type": "text"
}
],
"role": "string"
},
"model": "string",
"thinking": true
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|------------|----------------------------------------------|----------|--------------|-------------|
| `message` | [codersdk.ChatMessage](#codersdkchatmessage) | false | | |
| `model` | string | false | | |
| `thinking` | boolean | false | | |
## codersdk.CreateFirstUserRequest
```json
@ -1812,52 +1364,12 @@ This is required on creation to enable a user-flow of validating a template work
## codersdk.CreateTestAuditLogRequest
```json
{
"action": "create",
"additional_fields": [
0
],
"build_reason": "autostart",
"organization_id": "7c60d51f-b44e-4682-87d6-449835ea4de6",
"request_id": "266ea41d-adf5-480b-af50-15b940c2b846",
"resource_id": "4d5215ed-38bb-48ed-879a-fdb9ca58522f",
"resource_type": "template",
"time": "2019-08-24T14:15:22Z"
}
{}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|---------------------|------------------------------------------------|----------|--------------|-------------|
| `action` | [codersdk.AuditAction](#codersdkauditaction) | false | | |
| `additional_fields` | array of integer | false | | |
| `build_reason` | [codersdk.BuildReason](#codersdkbuildreason) | false | | |
| `organization_id` | string | false | | |
| `request_id` | string | false | | |
| `resource_id` | string | false | | |
| `resource_type` | [codersdk.ResourceType](#codersdkresourcetype) | false | | |
| `time` | string | false | | |
#### Enumerated Values
| Property | Value |
|-----------------|--------------------|
| `action` | `create` |
| `action` | `write` |
| `action` | `delete` |
| `action` | `start` |
| `action` | `stop` |
| `build_reason` | `autostart` |
| `build_reason` | `autostop` |
| `build_reason` | `initiator` |
| `resource_type` | `template` |
| `resource_type` | `template_version` |
| `resource_type` | `user` |
| `resource_type` | `workspace` |
| `resource_type` | `workspace_build` |
| `resource_type` | `git_ssh_key` |
| `resource_type` | `auditable_group` |
None
## codersdk.CreateTokenRequest
@ -2328,19 +1840,6 @@ CreateWorkspaceRequest provides options for creating a new workspace. Only one o
"user": {}
},
"agent_stat_refresh_interval": 0,
"ai": {
"value": {
"providers": [
{
"base_url": "string",
"models": [
"string"
],
"type": "string"
}
]
}
},
"allow_workspace_renames": true,
"autobuild_poll_interval": 0,
"browser_only": true,
@ -2829,19 +2328,6 @@ CreateWorkspaceRequest provides options for creating a new workspace. Only one o
"user": {}
},
"agent_stat_refresh_interval": 0,
"ai": {
"value": {
"providers": [
{
"base_url": "string",
"models": [
"string"
],
"type": "string"
}
]
}
},
"allow_workspace_renames": true,
"autobuild_poll_interval": 0,
"browser_only": true,
@ -3221,7 +2707,6 @@ CreateWorkspaceRequest provides options for creating a new workspace. Only one o
| `address` | [serpent.HostPort](#serpenthostport) | false | | Deprecated: Use HTTPAddress or TLS.Address instead. |
| `agent_fallback_troubleshooting_url` | [serpent.URL](#serpenturl) | false | | |
| `agent_stat_refresh_interval` | integer | false | | |
| `ai` | [serpent.Struct-codersdk_AIConfig](#serpentstruct-codersdk_aiconfig) | false | | |
| `allow_workspace_renames` | boolean | false | | |
| `autobuild_poll_interval` | integer | false | | |
| `browser_only` | boolean | false | | |
@ -3512,7 +2997,6 @@ CreateWorkspaceRequest provides options for creating a new workspace. Only one o
| `workspace-usage` |
| `web-push` |
| `workspace-prebuilds` |
| `agentic-chat` |
## codersdk.ExternalAuth
@ -4152,44 +3636,6 @@ Git clone makes use of this by parsing the URL from: 'Username for "https://gith
|-------------------------------|
| `REQUIRED_TEMPLATE_VARIABLES` |
## codersdk.LanguageModel
```json
{
"display_name": "string",
"id": "string",
"provider": "string"
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|----------------|--------|----------|--------------|-------------------------------------------------------------------|
| `display_name` | string | false | | |
| `id` | string | false | | ID is used by the provider to identify the LLM. |
| `provider` | string | false | | Provider is the provider of the LLM. e.g. openai, anthropic, etc. |
## codersdk.LanguageModelConfig
```json
{
"models": [
{
"display_name": "string",
"id": "string",
"provider": "string"
}
]
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|----------|-----------------------------------------------------------|----------|--------------|-------------|
| `models` | array of [codersdk.LanguageModel](#codersdklanguagemodel) | false | | |
## codersdk.License
```json
@ -6307,7 +5753,6 @@ Git clone makes use of this by parsing the URL from: 'Username for "https://gith
| `assign_org_role` |
| `assign_role` |
| `audit_log` |
| `chat` |
| `crypto_key` |
| `debug_info` |
| `deployment_config` |
@ -12269,30 +11714,6 @@ None
|---------|-----------------------------------------------------|----------|--------------|-------------|
| `value` | array of [codersdk.LinkConfig](#codersdklinkconfig) | false | | |
## serpent.Struct-codersdk_AIConfig
```json
{
"value": {
"providers": [
{
"base_url": "string",
"models": [
"string"
],
"type": "string"
}
]
}
}
```
### Properties
| Name | Type | Required | Restrictions | Description |
|---------|----------------------------------------|----------|--------------|-------------|
| `value` | [codersdk.AIConfig](#codersdkaiconfig) | false | | |
## serpent.URL
```json