diff --git a/integ-tests/openapi/baml_client/.openapi-generator-ignore b/integ-tests/openapi/baml_client/.openapi-generator-ignore new file mode 100644 index 000000000..90d8bf984 --- /dev/null +++ b/integ-tests/openapi/baml_client/.openapi-generator-ignore @@ -0,0 +1,12 @@ +############################################################################### +# +# Welcome to Baml! To use this generated code, please run the following: +# +# $ openapi-generator generate -c openapi.yaml -g -o +# +############################################################################### + +# This file was generated by BAML: please do not edit it. Instead, edit the +# BAML files and re-generate this code. + +.gitignore diff --git a/integ-tests/openapi/baml_client/openapi.yaml b/integ-tests/openapi/baml_client/openapi.yaml new file mode 100644 index 000000000..1d8303d0f --- /dev/null +++ b/integ-tests/openapi/baml_client/openapi.yaml @@ -0,0 +1,2776 @@ +############################################################################### +# +# Welcome to Baml! To use this generated code, please run the following: +# +# $ openapi-generator generate -c openapi.yaml -g -o +# +############################################################################### + +# This file was generated by BAML: please do not edit it. Instead, edit the +# BAML files and re-generate this code. +openapi: 3.0.0 +info: + description: baml-cli serve + version: 0.1.0 + title: baml-cli serve +servers: +- url: '{address}' + variables: + address: + default: http://localhost:2024 +paths: + /call/AaaSamOutputFormat: + post: + requestBody: + $ref: '#/components/requestBodies/AaaSamOutputFormat' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: AaaSamOutputFormatResponse + $ref: '#/components/schemas/Recipe' + operationId: AaaSamOutputFormat + /call/AudioInput: + post: + requestBody: + $ref: '#/components/requestBodies/AudioInput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: AudioInputResponse + type: string + operationId: AudioInput + /call/ClassifyMessage: + post: + requestBody: + $ref: '#/components/requestBodies/ClassifyMessage' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ClassifyMessageResponse + $ref: '#/components/schemas/Category' + operationId: ClassifyMessage + /call/ClassifyMessage2: + post: + requestBody: + $ref: '#/components/requestBodies/ClassifyMessage2' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ClassifyMessage2Response + $ref: '#/components/schemas/Category' + operationId: ClassifyMessage2 + /call/ClassifyMessage3: + post: + requestBody: + $ref: '#/components/requestBodies/ClassifyMessage3' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ClassifyMessage3Response + $ref: '#/components/schemas/Category' + operationId: ClassifyMessage3 + /call/CustomTask: + post: + requestBody: + $ref: '#/components/requestBodies/CustomTask' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: CustomTaskResponse + nullable: true + oneOf: + - $ref: '#/components/schemas/BookOrder' + - $ref: '#/components/schemas/FlightConfirmation' + - $ref: '#/components/schemas/GroceryReceipt' + operationId: CustomTask + /call/DescribeImage: + post: + requestBody: + $ref: '#/components/requestBodies/DescribeImage' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DescribeImageResponse + type: string + operationId: DescribeImage + /call/DescribeImage2: + post: + requestBody: + $ref: '#/components/requestBodies/DescribeImage2' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DescribeImage2Response + type: string + operationId: DescribeImage2 + /call/DescribeImage3: + post: + requestBody: + $ref: '#/components/requestBodies/DescribeImage3' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DescribeImage3Response + type: string + operationId: DescribeImage3 + /call/DescribeImage4: + post: + requestBody: + $ref: '#/components/requestBodies/DescribeImage4' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DescribeImage4Response + type: string + operationId: DescribeImage4 + /call/DummyOutputFunction: + post: + requestBody: + $ref: '#/components/requestBodies/DummyOutputFunction' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DummyOutputFunctionResponse + $ref: '#/components/schemas/DummyOutput' + operationId: DummyOutputFunction + /call/DynamicFunc: + post: + requestBody: + $ref: '#/components/requestBodies/DynamicFunc' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DynamicFuncResponse + $ref: '#/components/schemas/DynamicClassTwo' + operationId: DynamicFunc + /call/DynamicInputOutput: + post: + requestBody: + $ref: '#/components/requestBodies/DynamicInputOutput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DynamicInputOutputResponse + $ref: '#/components/schemas/DynInputOutput' + operationId: DynamicInputOutput + /call/DynamicListInputOutput: + post: + requestBody: + $ref: '#/components/requestBodies/DynamicListInputOutput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: DynamicListInputOutputResponse + type: array + items: + $ref: '#/components/schemas/DynInputOutput' + operationId: DynamicListInputOutput + /call/ExpectFailure: + post: + requestBody: + $ref: '#/components/requestBodies/ExpectFailure' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ExpectFailureResponse + type: string + operationId: ExpectFailure + /call/ExtractNames: + post: + requestBody: + $ref: '#/components/requestBodies/ExtractNames' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ExtractNamesResponse + type: array + items: + type: string + operationId: ExtractNames + /call/ExtractPeople: + post: + requestBody: + $ref: '#/components/requestBodies/ExtractPeople' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ExtractPeopleResponse + type: array + items: + $ref: '#/components/schemas/Person' + operationId: ExtractPeople + /call/ExtractReceiptInfo: + post: + requestBody: + $ref: '#/components/requestBodies/ExtractReceiptInfo' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ExtractReceiptInfoResponse + $ref: '#/components/schemas/ReceiptInfo' + operationId: ExtractReceiptInfo + /call/ExtractResume: + post: + requestBody: + $ref: '#/components/requestBodies/ExtractResume' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ExtractResumeResponse + $ref: '#/components/schemas/Resume' + operationId: ExtractResume + /call/ExtractResume2: + post: + requestBody: + $ref: '#/components/requestBodies/ExtractResume2' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: ExtractResume2Response + $ref: '#/components/schemas/Resume' + operationId: ExtractResume2 + /call/FnClassOptionalOutput: + post: + requestBody: + $ref: '#/components/requestBodies/FnClassOptionalOutput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnClassOptionalOutputResponse + nullable: true + $ref: '#/components/schemas/ClassOptionalOutput' + operationId: FnClassOptionalOutput + /call/FnClassOptionalOutput2: + post: + requestBody: + $ref: '#/components/requestBodies/FnClassOptionalOutput2' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnClassOptionalOutput2Response + nullable: true + $ref: '#/components/schemas/ClassOptionalOutput2' + operationId: FnClassOptionalOutput2 + /call/FnEnumListOutput: + post: + requestBody: + $ref: '#/components/requestBodies/FnEnumListOutput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnEnumListOutputResponse + type: array + items: + $ref: '#/components/schemas/EnumOutput' + operationId: FnEnumListOutput + /call/FnEnumOutput: + post: + requestBody: + $ref: '#/components/requestBodies/FnEnumOutput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnEnumOutputResponse + $ref: '#/components/schemas/EnumOutput' + operationId: FnEnumOutput + /call/FnNamedArgsSingleStringOptional: + post: + requestBody: + $ref: '#/components/requestBodies/FnNamedArgsSingleStringOptional' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnNamedArgsSingleStringOptionalResponse + type: string + operationId: FnNamedArgsSingleStringOptional + /call/FnOutputBool: + post: + requestBody: + $ref: '#/components/requestBodies/FnOutputBool' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnOutputBoolResponse + type: boolean + operationId: FnOutputBool + /call/FnOutputClass: + post: + requestBody: + $ref: '#/components/requestBodies/FnOutputClass' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnOutputClassResponse + $ref: '#/components/schemas/TestOutputClass' + operationId: FnOutputClass + /call/FnOutputClassList: + post: + requestBody: + $ref: '#/components/requestBodies/FnOutputClassList' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnOutputClassListResponse + type: array + items: + $ref: '#/components/schemas/TestOutputClass' + operationId: FnOutputClassList + /call/FnOutputClassNested: + post: + requestBody: + $ref: '#/components/requestBodies/FnOutputClassNested' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnOutputClassNestedResponse + $ref: '#/components/schemas/TestClassNested' + operationId: FnOutputClassNested + /call/FnOutputClassWithEnum: + post: + requestBody: + $ref: '#/components/requestBodies/FnOutputClassWithEnum' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnOutputClassWithEnumResponse + $ref: '#/components/schemas/TestClassWithEnum' + operationId: FnOutputClassWithEnum + /call/FnOutputStringList: + post: + requestBody: + $ref: '#/components/requestBodies/FnOutputStringList' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnOutputStringListResponse + type: array + items: + type: string + operationId: FnOutputStringList + /call/FnTestAliasedEnumOutput: + post: + requestBody: + $ref: '#/components/requestBodies/FnTestAliasedEnumOutput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnTestAliasedEnumOutputResponse + $ref: '#/components/schemas/TestEnum' + operationId: FnTestAliasedEnumOutput + /call/FnTestClassAlias: + post: + requestBody: + $ref: '#/components/requestBodies/FnTestClassAlias' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnTestClassAliasResponse + $ref: '#/components/schemas/TestClassAlias' + operationId: FnTestClassAlias + /call/FnTestNamedArgsSingleEnum: + post: + requestBody: + $ref: '#/components/requestBodies/FnTestNamedArgsSingleEnum' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: FnTestNamedArgsSingleEnumResponse + type: string + operationId: FnTestNamedArgsSingleEnum + /call/GetDataType: + post: + requestBody: + $ref: '#/components/requestBodies/GetDataType' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: GetDataTypeResponse + $ref: '#/components/schemas/RaysData' + operationId: GetDataType + /call/GetOrderInfo: + post: + requestBody: + $ref: '#/components/requestBodies/GetOrderInfo' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: GetOrderInfoResponse + $ref: '#/components/schemas/OrderInfo' + operationId: GetOrderInfo + /call/GetQuery: + post: + requestBody: + $ref: '#/components/requestBodies/GetQuery' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: GetQueryResponse + $ref: '#/components/schemas/SearchParams' + operationId: GetQuery + /call/MyFunc: + post: + requestBody: + $ref: '#/components/requestBodies/MyFunc' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: MyFuncResponse + $ref: '#/components/schemas/DynamicOutput' + operationId: MyFunc + /call/OptionalTest_Function: + post: + requestBody: + $ref: '#/components/requestBodies/OptionalTest_Function' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: OptionalTest_FunctionResponse + type: array + items: + nullable: true + $ref: '#/components/schemas/OptionalTest_ReturnType' + operationId: OptionalTest_Function + /call/PromptTestClaude: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestClaude' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestClaudeResponse + type: string + operationId: PromptTestClaude + /call/PromptTestClaudeChat: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestClaudeChat' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestClaudeChatResponse + type: string + operationId: PromptTestClaudeChat + /call/PromptTestClaudeChatNoSystem: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestClaudeChatNoSystem' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestClaudeChatNoSystemResponse + type: string + operationId: PromptTestClaudeChatNoSystem + /call/PromptTestOpenAI: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestOpenAI' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestOpenAIResponse + type: string + operationId: PromptTestOpenAI + /call/PromptTestOpenAIChat: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestOpenAIChat' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestOpenAIChatResponse + type: string + operationId: PromptTestOpenAIChat + /call/PromptTestOpenAIChatNoSystem: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestOpenAIChatNoSystem' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestOpenAIChatNoSystemResponse + type: string + operationId: PromptTestOpenAIChatNoSystem + /call/PromptTestStreaming: + post: + requestBody: + $ref: '#/components/requestBodies/PromptTestStreaming' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: PromptTestStreamingResponse + type: string + operationId: PromptTestStreaming + /call/SchemaDescriptions: + post: + requestBody: + $ref: '#/components/requestBodies/SchemaDescriptions' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: SchemaDescriptionsResponse + $ref: '#/components/schemas/Schema' + operationId: SchemaDescriptions + /call/TestAnthropic: + post: + requestBody: + $ref: '#/components/requestBodies/TestAnthropic' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestAnthropicResponse + type: string + operationId: TestAnthropic + /call/TestAnthropicShorthand: + post: + requestBody: + $ref: '#/components/requestBodies/TestAnthropicShorthand' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestAnthropicShorthandResponse + type: string + operationId: TestAnthropicShorthand + /call/TestAws: + post: + requestBody: + $ref: '#/components/requestBodies/TestAws' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestAwsResponse + type: string + operationId: TestAws + /call/TestAzure: + post: + requestBody: + $ref: '#/components/requestBodies/TestAzure' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestAzureResponse + type: string + operationId: TestAzure + /call/TestCaching: + post: + requestBody: + $ref: '#/components/requestBodies/TestCaching' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestCachingResponse + type: string + operationId: TestCaching + /call/TestFallbackClient: + post: + requestBody: + $ref: '#/components/requestBodies/TestFallbackClient' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFallbackClientResponse + type: string + operationId: TestFallbackClient + /call/TestFallbackToShorthand: + post: + requestBody: + $ref: '#/components/requestBodies/TestFallbackToShorthand' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFallbackToShorthandResponse + type: string + operationId: TestFallbackToShorthand + /call/TestFnNamedArgsSingleBool: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleBool' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleBoolResponse + type: string + operationId: TestFnNamedArgsSingleBool + /call/TestFnNamedArgsSingleClass: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleClass' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleClassResponse + type: string + operationId: TestFnNamedArgsSingleClass + /call/TestFnNamedArgsSingleEnumList: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleEnumList' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleEnumListResponse + type: string + operationId: TestFnNamedArgsSingleEnumList + /call/TestFnNamedArgsSingleFloat: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleFloat' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleFloatResponse + type: string + operationId: TestFnNamedArgsSingleFloat + /call/TestFnNamedArgsSingleInt: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleInt' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleIntResponse + type: string + operationId: TestFnNamedArgsSingleInt + /call/TestFnNamedArgsSingleMapStringToClass: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleMapStringToClass' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleMapStringToClassResponse + type: object + additionalProperties: + $ref: '#/components/schemas/StringToClassEntry' + operationId: TestFnNamedArgsSingleMapStringToClass + /call/TestFnNamedArgsSingleMapStringToMap: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleMapStringToMap' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleMapStringToMapResponse + type: object + additionalProperties: + type: object + additionalProperties: + type: string + operationId: TestFnNamedArgsSingleMapStringToMap + /call/TestFnNamedArgsSingleMapStringToString: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleMapStringToString' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleMapStringToStringResponse + type: object + additionalProperties: + type: string + operationId: TestFnNamedArgsSingleMapStringToString + /call/TestFnNamedArgsSingleString: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleString' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleStringResponse + type: string + operationId: TestFnNamedArgsSingleString + /call/TestFnNamedArgsSingleStringArray: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleStringArray' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleStringArrayResponse + type: string + operationId: TestFnNamedArgsSingleStringArray + /call/TestFnNamedArgsSingleStringList: + post: + requestBody: + $ref: '#/components/requestBodies/TestFnNamedArgsSingleStringList' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestFnNamedArgsSingleStringListResponse + type: string + operationId: TestFnNamedArgsSingleStringList + /call/TestGemini: + post: + requestBody: + $ref: '#/components/requestBodies/TestGemini' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestGeminiResponse + type: string + operationId: TestGemini + /call/TestImageInput: + post: + requestBody: + $ref: '#/components/requestBodies/TestImageInput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestImageInputResponse + type: string + operationId: TestImageInput + /call/TestImageInputAnthropic: + post: + requestBody: + $ref: '#/components/requestBodies/TestImageInputAnthropic' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestImageInputAnthropicResponse + type: string + operationId: TestImageInputAnthropic + /call/TestImageListInput: + post: + requestBody: + $ref: '#/components/requestBodies/TestImageListInput' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestImageListInputResponse + type: string + operationId: TestImageListInput + /call/TestMulticlassNamedArgs: + post: + requestBody: + $ref: '#/components/requestBodies/TestMulticlassNamedArgs' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestMulticlassNamedArgsResponse + type: string + operationId: TestMulticlassNamedArgs + /call/TestOllama: + post: + requestBody: + $ref: '#/components/requestBodies/TestOllama' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestOllamaResponse + type: string + operationId: TestOllama + /call/TestOpenAILegacyProvider: + post: + requestBody: + $ref: '#/components/requestBodies/TestOpenAILegacyProvider' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestOpenAILegacyProviderResponse + type: string + operationId: TestOpenAILegacyProvider + /call/TestOpenAIShorthand: + post: + requestBody: + $ref: '#/components/requestBodies/TestOpenAIShorthand' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestOpenAIShorthandResponse + type: string + operationId: TestOpenAIShorthand + /call/TestRetryConstant: + post: + requestBody: + $ref: '#/components/requestBodies/TestRetryConstant' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestRetryConstantResponse + type: string + operationId: TestRetryConstant + /call/TestRetryExponential: + post: + requestBody: + $ref: '#/components/requestBodies/TestRetryExponential' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestRetryExponentialResponse + type: string + operationId: TestRetryExponential + /call/TestVertex: + post: + requestBody: + $ref: '#/components/requestBodies/TestVertex' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: TestVertexResponse + type: string + operationId: TestVertex + /call/UnionTest_Function: + post: + requestBody: + $ref: '#/components/requestBodies/UnionTest_Function' + responses: + '200': + description: Successful operation + content: + application/json: + schema: + title: UnionTest_FunctionResponse + $ref: '#/components/schemas/UnionTest_ReturnType' + operationId: UnionTest_Function +components: + requestBodies: + AaaSamOutputFormat: + required: true + content: + application/json: + schema: + type: object + properties: + recipe: + type: string + required: + - recipe + additionalProperties: false + AudioInput: + required: true + content: + application/json: + schema: + type: object + properties: + aud: + $ref: '#/components/schemas/BamlAudio' + required: + - aud + additionalProperties: false + ClassifyMessage: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + ClassifyMessage2: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + ClassifyMessage3: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + CustomTask: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + DescribeImage: + required: true + content: + application/json: + schema: + type: object + properties: + img: + $ref: '#/components/schemas/BamlImage' + required: + - img + additionalProperties: false + DescribeImage2: + required: true + content: + application/json: + schema: + type: object + properties: + classWithImage: + $ref: '#/components/schemas/ClassWithImage' + img2: + $ref: '#/components/schemas/BamlImage' + required: + - classWithImage + - img2 + additionalProperties: false + DescribeImage3: + required: true + content: + application/json: + schema: + type: object + properties: + classWithImage: + $ref: '#/components/schemas/ClassWithImage' + img2: + $ref: '#/components/schemas/BamlImage' + required: + - classWithImage + - img2 + additionalProperties: false + DescribeImage4: + required: true + content: + application/json: + schema: + type: object + properties: + classWithImage: + $ref: '#/components/schemas/ClassWithImage' + img2: + $ref: '#/components/schemas/BamlImage' + required: + - classWithImage + - img2 + additionalProperties: false + DummyOutputFunction: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + DynamicFunc: + required: true + content: + application/json: + schema: + type: object + properties: + input: + $ref: '#/components/schemas/DynamicClassOne' + required: + - input + additionalProperties: false + DynamicInputOutput: + required: true + content: + application/json: + schema: + type: object + properties: + input: + $ref: '#/components/schemas/DynInputOutput' + required: + - input + additionalProperties: false + DynamicListInputOutput: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: array + items: + $ref: '#/components/schemas/DynInputOutput' + required: + - input + additionalProperties: false + ExpectFailure: + required: true + content: + application/json: + schema: + type: object + properties: {} + required: [] + additionalProperties: false + ExtractNames: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + ExtractPeople: + required: true + content: + application/json: + schema: + type: object + properties: + text: + type: string + required: + - text + additionalProperties: false + ExtractReceiptInfo: + required: true + content: + application/json: + schema: + type: object + properties: + email: + type: string + required: + - email + additionalProperties: false + ExtractResume: + required: true + content: + application/json: + schema: + type: object + properties: + resume: + type: string + img: + nullable: true + $ref: '#/components/schemas/BamlImage' + required: + - resume + additionalProperties: false + ExtractResume2: + required: true + content: + application/json: + schema: + type: object + properties: + resume: + type: string + required: + - resume + additionalProperties: false + FnClassOptionalOutput: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnClassOptionalOutput2: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnEnumListOutput: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnEnumOutput: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnNamedArgsSingleStringOptional: + required: true + content: + application/json: + schema: + type: object + properties: + myString: + nullable: true + type: string + required: [] + additionalProperties: false + FnOutputBool: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnOutputClass: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnOutputClassList: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnOutputClassNested: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnOutputClassWithEnum: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnOutputStringList: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnTestAliasedEnumOutput: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnTestClassAlias: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + FnTestNamedArgsSingleEnum: + required: true + content: + application/json: + schema: + type: object + properties: + myArg: + $ref: '#/components/schemas/NamedArgsSingleEnum' + required: + - myArg + additionalProperties: false + GetDataType: + required: true + content: + application/json: + schema: + type: object + properties: + text: + type: string + required: + - text + additionalProperties: false + GetOrderInfo: + required: true + content: + application/json: + schema: + type: object + properties: + email: + $ref: '#/components/schemas/Email' + required: + - email + additionalProperties: false + GetQuery: + required: true + content: + application/json: + schema: + type: object + properties: + query: + type: string + required: + - query + additionalProperties: false + MyFunc: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + OptionalTest_Function: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestClaude: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestClaudeChat: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestClaudeChatNoSystem: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestOpenAI: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestOpenAIChat: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestOpenAIChatNoSystem: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + PromptTestStreaming: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + SchemaDescriptions: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestAnthropic: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestAnthropicShorthand: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestAws: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestAzure: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestCaching: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestFallbackClient: + required: true + content: + application/json: + schema: + type: object + properties: {} + required: [] + additionalProperties: false + TestFallbackToShorthand: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestFnNamedArgsSingleBool: + required: true + content: + application/json: + schema: + type: object + properties: + myBool: + type: boolean + required: + - myBool + additionalProperties: false + TestFnNamedArgsSingleClass: + required: true + content: + application/json: + schema: + type: object + properties: + myArg: + $ref: '#/components/schemas/NamedArgsSingleClass' + required: + - myArg + additionalProperties: false + TestFnNamedArgsSingleEnumList: + required: true + content: + application/json: + schema: + type: object + properties: + myArg: + type: array + items: + $ref: '#/components/schemas/NamedArgsSingleEnumList' + required: + - myArg + additionalProperties: false + TestFnNamedArgsSingleFloat: + required: true + content: + application/json: + schema: + type: object + properties: + myFloat: + type: number + required: + - myFloat + additionalProperties: false + TestFnNamedArgsSingleInt: + required: true + content: + application/json: + schema: + type: object + properties: + myInt: + type: integer + required: + - myInt + additionalProperties: false + TestFnNamedArgsSingleMapStringToClass: + required: true + content: + application/json: + schema: + type: object + properties: + myMap: + type: object + additionalProperties: + $ref: '#/components/schemas/StringToClassEntry' + required: + - myMap + additionalProperties: false + TestFnNamedArgsSingleMapStringToMap: + required: true + content: + application/json: + schema: + type: object + properties: + myMap: + type: object + additionalProperties: + type: object + additionalProperties: + type: string + required: + - myMap + additionalProperties: false + TestFnNamedArgsSingleMapStringToString: + required: true + content: + application/json: + schema: + type: object + properties: + myMap: + type: object + additionalProperties: + type: string + required: + - myMap + additionalProperties: false + TestFnNamedArgsSingleString: + required: true + content: + application/json: + schema: + type: object + properties: + myString: + type: string + required: + - myString + additionalProperties: false + TestFnNamedArgsSingleStringArray: + required: true + content: + application/json: + schema: + type: object + properties: + myStringArray: + type: array + items: + type: string + required: + - myStringArray + additionalProperties: false + TestFnNamedArgsSingleStringList: + required: true + content: + application/json: + schema: + type: object + properties: + myArg: + type: array + items: + type: string + required: + - myArg + additionalProperties: false + TestGemini: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestImageInput: + required: true + content: + application/json: + schema: + type: object + properties: + img: + $ref: '#/components/schemas/BamlImage' + required: + - img + additionalProperties: false + TestImageInputAnthropic: + required: true + content: + application/json: + schema: + type: object + properties: + img: + $ref: '#/components/schemas/BamlImage' + required: + - img + additionalProperties: false + TestImageListInput: + required: true + content: + application/json: + schema: + type: object + properties: + imgs: + type: array + items: + $ref: '#/components/schemas/BamlImage' + required: + - imgs + additionalProperties: false + TestMulticlassNamedArgs: + required: true + content: + application/json: + schema: + type: object + properties: + myArg: + $ref: '#/components/schemas/NamedArgsSingleClass' + myArg2: + $ref: '#/components/schemas/NamedArgsSingleClass' + required: + - myArg + - myArg2 + additionalProperties: false + TestOllama: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestOpenAILegacyProvider: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestOpenAIShorthand: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + TestRetryConstant: + required: true + content: + application/json: + schema: + type: object + properties: {} + required: [] + additionalProperties: false + TestRetryExponential: + required: true + content: + application/json: + schema: + type: object + properties: {} + required: [] + additionalProperties: false + TestVertex: + required: true + content: + application/json: + schema: + type: object + properties: + input: + type: string + required: + - input + additionalProperties: false + UnionTest_Function: + required: true + content: + application/json: + schema: + type: object + properties: + input: + nullable: true + oneOf: + - type: string + - type: boolean + required: + - input + additionalProperties: false + schemas: + BamlImage: + oneOf: + - type: object + title: BamlImageBase64 + properties: + base64: + type: string + media_type: + type: string + nullable: true + - type: object + title: BamlImageUrl + properties: + url: + type: string + media_type: + type: string + nullable: true + BamlAudio: + oneOf: + - type: object + title: BamlAudioBase64 + properties: + base64: + type: string + media_type: + type: string + nullable: true + - type: object + title: BamlAudioUrl + properties: + url: + type: string + media_type: + type: string + nullable: true + Category: + enum: + - Refund + - CancelOrder + - TechnicalSupport + - AccountIssue + - Question + type: string + Category2: + enum: + - Refund + - CancelOrder + - TechnicalSupport + - AccountIssue + - Question + type: string + Category3: + enum: + - Refund + - CancelOrder + - TechnicalSupport + - AccountIssue + - Question + type: string + Color: + enum: + - RED + - BLUE + - GREEN + - YELLOW + - BLACK + - WHITE + type: string + DataType: + enum: + - Resume + - Event + type: string + DynEnumOne: + enum: [] + type: string + DynEnumTwo: + enum: [] + type: string + EnumInClass: + enum: + - ONE + - TWO + type: string + EnumOutput: + enum: + - ONE + - TWO + - THREE + type: string + Hobby: + enum: + - SPORTS + - MUSIC + - READING + type: string + NamedArgsSingleEnum: + enum: + - ONE + - TWO + type: string + NamedArgsSingleEnumList: + enum: + - ONE + - TWO + type: string + OptionalTest_CategoryType: + enum: + - Aleph + - Beta + - Gamma + type: string + OrderStatus: + enum: + - ORDERED + - SHIPPED + - DELIVERED + - CANCELLED + type: string + Tag: + enum: + - Security + - AI + - Blockchain + type: string + TestEnum: + enum: + - A + - B + - C + - D + - E + - F + - G + type: string + Blah: + type: object + properties: + prop4: + nullable: true + type: string + required: [] + additionalProperties: false + BookOrder: + type: object + properties: + orderId: + type: string + title: + type: string + quantity: + type: integer + price: + type: number + required: + - orderId + - title + - quantity + - price + additionalProperties: false + ClassOptionalOutput: + type: object + properties: + prop1: + type: string + prop2: + type: string + required: + - prop1 + - prop2 + additionalProperties: false + ClassOptionalOutput2: + type: object + properties: + prop1: + nullable: true + type: string + prop2: + nullable: true + type: string + prop3: + nullable: true + $ref: '#/components/schemas/Blah' + required: [] + additionalProperties: false + ClassWithImage: + type: object + properties: + myImage: + $ref: '#/components/schemas/BamlImage' + param2: + type: string + fake_image: + $ref: '#/components/schemas/FakeImage' + required: + - myImage + - param2 + - fake_image + additionalProperties: false + CustomTaskResult: + type: object + properties: + bookOrder: + nullable: true + oneOf: + - $ref: '#/components/schemas/BookOrder' + flightConfirmation: + nullable: true + oneOf: + - $ref: '#/components/schemas/FlightConfirmation' + groceryReceipt: + nullable: true + oneOf: + - $ref: '#/components/schemas/GroceryReceipt' + required: [] + additionalProperties: false + DummyOutput: + type: object + properties: + nonce: + type: string + nonce2: + type: string + required: + - nonce + - nonce2 + additionalProperties: false + DynInputOutput: + type: object + properties: + testKey: + type: string + required: + - testKey + additionalProperties: false + DynamicClassOne: + type: object + properties: {} + required: [] + additionalProperties: false + DynamicClassTwo: + type: object + properties: + hi: + type: string + some_class: + $ref: '#/components/schemas/SomeClassNestedDynamic' + status: + $ref: '#/components/schemas/DynEnumOne' + required: + - hi + - some_class + - status + additionalProperties: false + DynamicOutput: + type: object + properties: {} + required: [] + additionalProperties: false + Education: + type: object + properties: + institution: + type: string + location: + type: string + degree: + type: string + major: + type: array + items: + type: string + graduation_date: + nullable: true + type: string + required: + - institution + - location + - degree + - major + additionalProperties: false + Email: + type: object + properties: + subject: + type: string + body: + type: string + from_address: + type: string + required: + - subject + - body + - from_address + additionalProperties: false + Event: + type: object + properties: + title: + type: string + date: + type: string + location: + type: string + description: + type: string + required: + - title + - date + - location + - description + additionalProperties: false + FakeImage: + type: object + properties: + url: + type: string + required: + - url + additionalProperties: false + FlightConfirmation: + type: object + properties: + confirmationNumber: + type: string + flightNumber: + type: string + departureTime: + type: string + arrivalTime: + type: string + seatNumber: + type: string + required: + - confirmationNumber + - flightNumber + - departureTime + - arrivalTime + - seatNumber + additionalProperties: false + GroceryReceipt: + type: object + properties: + receiptId: + type: string + storeName: + type: string + items: + type: array + items: + nullable: true + oneOf: + - type: string + - type: integer + - type: number + totalAmount: + type: number + required: + - receiptId + - storeName + - items + - totalAmount + additionalProperties: false + InnerClass: + type: object + properties: + prop1: + type: string + prop2: + type: string + inner: + $ref: '#/components/schemas/InnerClass2' + required: + - prop1 + - prop2 + - inner + additionalProperties: false + InnerClass2: + type: object + properties: + prop2: + type: integer + prop3: + type: number + required: + - prop2 + - prop3 + additionalProperties: false + NamedArgsSingleClass: + type: object + properties: + key: + type: string + key_two: + type: boolean + key_three: + type: integer + required: + - key + - key_two + - key_three + additionalProperties: false + Nested: + type: object + properties: + prop3: + nullable: true + oneOf: + - type: string + prop4: + nullable: true + oneOf: + - type: string + prop20: + $ref: '#/components/schemas/Nested2' + required: + - prop20 + additionalProperties: false + Nested2: + type: object + properties: + prop11: + nullable: true + oneOf: + - type: string + prop12: + nullable: true + oneOf: + - type: string + required: [] + additionalProperties: false + OptionalTest_Prop1: + type: object + properties: + omega_a: + type: string + omega_b: + type: integer + required: + - omega_a + - omega_b + additionalProperties: false + OptionalTest_ReturnType: + type: object + properties: + omega_1: + nullable: true + $ref: '#/components/schemas/OptionalTest_Prop1' + omega_2: + nullable: true + type: string + omega_3: + type: array + items: + nullable: true + $ref: '#/components/schemas/OptionalTest_CategoryType' + required: + - omega_3 + additionalProperties: false + OrderInfo: + type: object + properties: + order_status: + $ref: '#/components/schemas/OrderStatus' + tracking_number: + nullable: true + type: string + estimated_arrival_date: + nullable: true + type: string + required: + - order_status + additionalProperties: false + Person: + type: object + properties: + name: + nullable: true + type: string + hair_color: + nullable: true + $ref: '#/components/schemas/Color' + required: [] + additionalProperties: false + Quantity: + type: object + properties: + amount: + nullable: true + oneOf: + - type: integer + - type: number + unit: + nullable: true + type: string + required: + - amount + additionalProperties: false + RaysData: + type: object + properties: + dataType: + $ref: '#/components/schemas/DataType' + value: + nullable: true + oneOf: + - $ref: '#/components/schemas/Resume' + - $ref: '#/components/schemas/Event' + required: + - dataType + - value + additionalProperties: false + ReceiptInfo: + type: object + properties: + items: + type: array + items: + $ref: '#/components/schemas/ReceiptItem' + total_cost: + nullable: true + type: number + required: + - items + additionalProperties: false + ReceiptItem: + type: object + properties: + name: + type: string + description: + nullable: true + type: string + quantity: + type: integer + price: + type: number + required: + - name + - quantity + - price + additionalProperties: false + Recipe: + type: object + properties: + ingredients: + type: object + additionalProperties: + $ref: '#/components/schemas/Quantity' + required: + - ingredients + additionalProperties: false + Resume: + type: object + properties: + name: + type: string + email: + type: string + phone: + type: string + experience: + type: array + items: + $ref: '#/components/schemas/Education' + education: + type: array + items: + type: string + skills: + type: array + items: + type: string + required: + - name + - email + - phone + - experience + - education + - skills + additionalProperties: false + Schema: + type: object + properties: + prop1: + nullable: true + oneOf: + - type: string + prop2: + nullable: true + oneOf: + - $ref: '#/components/schemas/Nested' + - type: string + prop5: + type: array + items: + nullable: true + oneOf: + - type: string + prop6: + nullable: true + oneOf: + - type: string + - type: array + items: + $ref: '#/components/schemas/Nested' + nested_attrs: + type: array + items: + nullable: true + oneOf: + - type: string + - $ref: '#/components/schemas/Nested' + parens: + nullable: true + oneOf: + - type: string + other_group: + nullable: true + oneOf: + - type: string + - nullable: true + oneOf: + - type: integer + - type: string + required: + - prop2 + - prop5 + - prop6 + - nested_attrs + - other_group + additionalProperties: false + SearchParams: + type: object + properties: + dateRange: + nullable: true + type: integer + location: + type: array + items: + type: string + jobTitle: + nullable: true + $ref: '#/components/schemas/WithReasoning' + company: + nullable: true + $ref: '#/components/schemas/WithReasoning' + description: + type: array + items: + $ref: '#/components/schemas/WithReasoning' + tags: + type: array + items: + nullable: true + oneOf: + - $ref: '#/components/schemas/Tag' + - type: string + required: + - location + - description + - tags + additionalProperties: false + SomeClassNestedDynamic: + type: object + properties: + hi: + type: string + required: + - hi + additionalProperties: false + StringToClassEntry: + type: object + properties: + word: + type: string + required: + - word + additionalProperties: false + TestClassAlias: + type: object + properties: + key: + type: string + key2: + type: string + key3: + type: string + key4: + type: string + key5: + type: string + required: + - key + - key2 + - key3 + - key4 + - key5 + additionalProperties: false + TestClassNested: + type: object + properties: + prop1: + type: string + prop2: + $ref: '#/components/schemas/InnerClass' + required: + - prop1 + - prop2 + additionalProperties: false + TestClassWithEnum: + type: object + properties: + prop1: + type: string + prop2: + $ref: '#/components/schemas/EnumInClass' + required: + - prop1 + - prop2 + additionalProperties: false + TestOutputClass: + type: object + properties: + prop1: + type: string + prop2: + type: integer + required: + - prop1 + - prop2 + additionalProperties: false + UnionTest_ReturnType: + type: object + properties: + prop1: + nullable: true + oneOf: + - type: string + - type: boolean + prop2: + type: array + items: + nullable: true + oneOf: + - type: number + - type: boolean + prop3: + nullable: true + oneOf: + - type: array + items: + type: boolean + - type: array + items: + type: integer + required: + - prop1 + - prop2 + - prop3 + additionalProperties: false + WithReasoning: + type: object + properties: + value: + type: string + reasoning: + type: string + required: + - value + - reasoning + additionalProperties: false