Skip to content

Commit f2a71af

Browse files
committed
feat(openapi): add support for Supabase storage and Anthropic thinking config
This commit adds support for Supabase storage and Anthropic thinking configuration in the OpenAPI specification. It introduces new fields for Supabase credentials, bucket plans, and Anthropic thinking budget tokens. It also updates the description for the "model" field to include the new "claude-3-7-sonnet-20250219" model.
1 parent 2bb10e7 commit f2a71af

File tree

1 file changed

+202
-3
lines changed

1 file changed

+202
-3
lines changed

fern/apis/api/openapi.json

Lines changed: 202 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6562,6 +6562,27 @@
65626562
"model"
65636563
]
65646564
},
6565+
"AnthropicThinkingConfig": {
6566+
"type": "object",
6567+
"properties": {
6568+
"type": {
6569+
"type": "string",
6570+
"enum": [
6571+
"enabled"
6572+
]
6573+
},
6574+
"budgetTokens": {
6575+
"type": "number",
6576+
"description": "The maximum number of tokens to allocate for thinking.\nMust be between 1024 and 100000 tokens.",
6577+
"minimum": 1024,
6578+
"maximum": 100000
6579+
}
6580+
},
6581+
"required": [
6582+
"type",
6583+
"budgetTokens"
6584+
]
6585+
},
65656586
"AnthropicModel": {
65666587
"type": "object",
65676588
"properties": {
@@ -6630,22 +6651,32 @@
66306651
},
66316652
"model": {
66326653
"type": "string",
6633-
"description": "This is the Anthropic/Claude models that will be used.",
6654+
"description": "The specific Anthropic/Claude model that will be used.",
66346655
"enum": [
66356656
"claude-3-opus-20240229",
66366657
"claude-3-sonnet-20240229",
66376658
"claude-3-haiku-20240307",
66386659
"claude-3-5-sonnet-20240620",
66396660
"claude-3-5-sonnet-20241022",
6640-
"claude-3-5-haiku-20241022"
6661+
"claude-3-5-haiku-20241022",
6662+
"claude-3-7-sonnet-20250219"
66416663
]
66426664
},
66436665
"provider": {
66446666
"type": "string",
6667+
"description": "The provider identifier for Anthropic.",
66456668
"enum": [
66466669
"anthropic"
66476670
]
66486671
},
6672+
"thinking": {
6673+
"description": "Optional configuration for Anthropic's thinking feature.\nOnly applicable for claude-3-7-sonnet-20250219 model.\nIf provided, maxTokens must be greater than thinking.budgetTokens.",
6674+
"allOf": [
6675+
{
6676+
"$ref": "#/components/schemas/AnthropicThinkingConfig"
6677+
}
6678+
]
6679+
},
66496680
"temperature": {
66506681
"type": "number",
66516682
"description": "This is the temperature that will be used for calls. Default is 0 to leverage caching for lower latency.",
@@ -8970,6 +9001,13 @@
89709001
"description": "Defines the use speaker boost for voice settings.",
89719002
"example": false
89729003
},
9004+
"speed": {
9005+
"type": "number",
9006+
"description": "Defines the speed for voice settings.",
9007+
"minimum": 0.7,
9008+
"maximum": 1.2,
9009+
"example": 0.9
9010+
},
89739011
"optimizeStreamingLatency": {
89749012
"type": "number",
89759013
"description": "Defines the optimize streaming latency for voice settings. Defaults to 3.",
@@ -9986,6 +10024,13 @@
998610024
"description": "Defines the use speaker boost for voice settings.",
998710025
"example": false
998810026
},
10027+
"speed": {
10028+
"type": "number",
10029+
"description": "Defines the speed for voice settings.",
10030+
"minimum": 0.7,
10031+
"maximum": 1.2,
10032+
"example": 0.9
10033+
},
998910034
"optimizeStreamingLatency": {
999010035
"type": "number",
999110036
"description": "Defines the optimize streaming latency for voice settings. Defaults to 3.",
@@ -11821,6 +11866,84 @@
1182111866
"s3PathPrefix"
1182211867
]
1182311868
},
11869+
"SupabaseBucketPlan": {
11870+
"type": "object",
11871+
"properties": {
11872+
"region": {
11873+
"type": "string",
11874+
"description": "This is the S3 Region. It should look like us-east-1\nIt should be one of the supabase regions defined in the SUPABASE_REGION enum\nCheck https://supabase.com/docs/guides/platform/regions for up to date regions",
11875+
"enum": [
11876+
"us-west-1",
11877+
"us-east-1",
11878+
"us-east-2",
11879+
"ca-central-1",
11880+
"eu-west-1",
11881+
"eu-west-2",
11882+
"eu-west-3",
11883+
"eu-central-1",
11884+
"eu-central-2",
11885+
"eu-north-1",
11886+
"ap-south-1",
11887+
"ap-southeast-1",
11888+
"ap-northeast-1",
11889+
"ap-northeast-2",
11890+
"ap-southeast-2",
11891+
"sa-east-1"
11892+
]
11893+
},
11894+
"url": {
11895+
"type": "string",
11896+
"description": "This is the S3 compatible URL for Supabase S3\nThis should look like https://<project-ID>.supabase.co/storage/v1/s3"
11897+
},
11898+
"accessKeyId": {
11899+
"type": "string",
11900+
"description": "This is the Supabase S3 Access Key ID.\nThe user creates this in the Supabase project Storage settings"
11901+
},
11902+
"secretAccessKey": {
11903+
"type": "string",
11904+
"description": "This is the Supabase S3 Secret Access Key.\nThe user creates this in the Supabase project Storage settings along with the access key id"
11905+
},
11906+
"name": {
11907+
"type": "string",
11908+
"description": "This is the Supabase S3 Bucket Name.\nThe user must create this in Supabase under Storage > Buckets\nA bucket that does not exist will not be checked now, but file uploads will fail"
11909+
},
11910+
"path": {
11911+
"type": "string",
11912+
"description": "This is the Supabase S3 Bucket Folder Path.\nThe user can create this in Supabase under Storage > Buckets\nA path that does not exist will not be checked now, but file uploads will fail\nA Path is like a folder in the bucket\nEg. If the bucket is called \"my-bucket\" and the path is \"my-folder\", the full path is \"my-bucket/my-folder\""
11913+
}
11914+
},
11915+
"required": [
11916+
"region",
11917+
"url",
11918+
"accessKeyId",
11919+
"secretAccessKey",
11920+
"name"
11921+
]
11922+
},
11923+
"CreateSupabaseCredentialDTO": {
11924+
"type": "object",
11925+
"properties": {
11926+
"provider": {
11927+
"type": "string",
11928+
"enum": [
11929+
"supabase"
11930+
],
11931+
"description": "This is for supabase storage."
11932+
},
11933+
"bucketPlan": {
11934+
"$ref": "#/components/schemas/SupabaseBucketPlan"
11935+
},
11936+
"name": {
11937+
"type": "string",
11938+
"description": "This is the name of credential. This is just for your reference.",
11939+
"minLength": 1,
11940+
"maxLength": 40
11941+
}
11942+
},
11943+
"required": [
11944+
"provider"
11945+
]
11946+
},
1182411947
"CreateSmallestAICredentialDTO": {
1182511948
"type": "object",
1182611949
"properties": {
@@ -12718,7 +12841,7 @@
1271812841
"timeoutSeconds": {
1271912842
"type": "number",
1272012843
"description": "This is the time in seconds to wait before processing the input.\nIf the input is not received within this time, the input will be ignored.\nIf set to \"off\", the input will be processed when the user enters a delimiter or immediately if no delimiter is used.\n\n@default 2",
12721-
"minimum": 0.5,
12844+
"minimum": 0,
1272212845
"maximum": 10
1272312846
},
1272412847
"delimiters": {
@@ -13165,6 +13288,10 @@
1316513288
"$ref": "#/components/schemas/CreateS3CredentialDTO",
1316613289
"title": "S3Credential"
1316713290
},
13291+
{
13292+
"$ref": "#/components/schemas/CreateSupabaseCredentialDTO",
13293+
"title": "SupabaseCredential"
13294+
},
1316813295
{
1316913296
"$ref": "#/components/schemas/CreateSmallestAICredentialDTO",
1317013297
"title": "SmallestAICredential"
@@ -13743,6 +13870,10 @@
1374313870
"$ref": "#/components/schemas/CreateS3CredentialDTO",
1374413871
"title": "S3Credential"
1374513872
},
13873+
{
13874+
"$ref": "#/components/schemas/CreateSupabaseCredentialDTO",
13875+
"title": "SupabaseCredential"
13876+
},
1374613877
{
1374713878
"$ref": "#/components/schemas/CreateSmallestAICredentialDTO",
1374813879
"title": "SmallestAICredential"
@@ -15380,6 +15511,10 @@
1538015511
"$ref": "#/components/schemas/CreateS3CredentialDTO",
1538115512
"title": "S3Credential"
1538215513
},
15514+
{
15515+
"$ref": "#/components/schemas/CreateSupabaseCredentialDTO",
15516+
"title": "SupabaseCredential"
15517+
},
1538315518
{
1538415519
"$ref": "#/components/schemas/CreateSmallestAICredentialDTO",
1538515520
"title": "SmallestAICredential"
@@ -15982,6 +16117,10 @@
1598216117
"$ref": "#/components/schemas/CreateS3CredentialDTO",
1598316118
"title": "S3Credential"
1598416119
},
16120+
{
16121+
"$ref": "#/components/schemas/CreateSupabaseCredentialDTO",
16122+
"title": "SupabaseCredential"
16123+
},
1598516124
{
1598616125
"$ref": "#/components/schemas/CreateSmallestAICredentialDTO",
1598716126
"title": "SmallestAICredential"
@@ -22693,6 +22832,52 @@
2269322832
"updatedAt"
2269422833
]
2269522834
},
22835+
"SupabaseCredential": {
22836+
"type": "object",
22837+
"properties": {
22838+
"provider": {
22839+
"type": "string",
22840+
"enum": [
22841+
"supabase"
22842+
],
22843+
"description": "This is for supabase storage."
22844+
},
22845+
"id": {
22846+
"type": "string",
22847+
"description": "This is the unique identifier for the credential."
22848+
},
22849+
"orgId": {
22850+
"type": "string",
22851+
"description": "This is the unique identifier for the org that this credential belongs to."
22852+
},
22853+
"createdAt": {
22854+
"format": "date-time",
22855+
"type": "string",
22856+
"description": "This is the ISO 8601 date-time string of when the credential was created."
22857+
},
22858+
"updatedAt": {
22859+
"format": "date-time",
22860+
"type": "string",
22861+
"description": "This is the ISO 8601 date-time string of when the assistant was last updated."
22862+
},
22863+
"name": {
22864+
"type": "string",
22865+
"description": "This is the name of credential. This is just for your reference.",
22866+
"minLength": 1,
22867+
"maxLength": 40
22868+
},
22869+
"bucketPlan": {
22870+
"$ref": "#/components/schemas/SupabaseBucketPlan"
22871+
}
22872+
},
22873+
"required": [
22874+
"provider",
22875+
"id",
22876+
"orgId",
22877+
"createdAt",
22878+
"updatedAt"
22879+
]
22880+
},
2269622881
"SmallestAICredential": {
2269722882
"type": "object",
2269822883
"properties": {
@@ -23810,6 +23995,20 @@
2381023995
}
2381123996
}
2381223997
},
23998+
"UpdateSupabaseCredentialDTO": {
23999+
"type": "object",
24000+
"properties": {
24001+
"name": {
24002+
"type": "string",
24003+
"description": "This is the name of credential. This is just for your reference.",
24004+
"minLength": 1,
24005+
"maxLength": 40
24006+
},
24007+
"bucketPlan": {
24008+
"$ref": "#/components/schemas/SupabaseBucketPlan"
24009+
}
24010+
}
24011+
},
2381324012
"UpdateSmallestAICredentialDTO": {
2381424013
"type": "object",
2381524014
"properties": {

0 commit comments

Comments
 (0)