From 39bb886c7b9d995fccb61e723c3b342c025d9900 Mon Sep 17 00:00:00 2001
From: fern-api <115122769+fern-api[bot]@users.noreply.github.com>
Date: Sun, 14 Jul 2024 00:31:27 +0000
Subject: [PATCH] SDK regeneration
---
.fernignore | 1 +
.github/workflows/ci.yml | 30 +
.gitignore | 3 +
.npmignore | 9 +
.prettierrc.yml | 2 +
LICENSE | 201 -
README.md | 141 +
jest.config.js | 5 +
package.json | 39 +
reference.md | 6825 +++++++++++++++++
src/Client.ts | 281 +
src/api/errors/InternalServerError.ts | 17 +
src/api/errors/PaymentRequiredError.ts | 16 +
src/api/errors/TooManyRequestsError.ts | 17 +
src/api/errors/UnprocessableEntityError.ts | 17 +
src/api/errors/index.ts | 4 +
src/api/index.ts | 3 +
.../aiAnimationGenerator/client/Client.ts | 344 +
.../aiAnimationGenerator/client/index.ts | 1 +
.../client/requests/StatusDeforumSdRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../resources/aiAnimationGenerator/index.ts | 1 +
.../resources/aiArtQrCode/client/Client.ts | 338 +
src/api/resources/aiArtQrCode/client/index.ts | 1 +
.../client/requests/StatusArtQrCodeRequest.ts | 13 +
.../aiArtQrCode/client/requests/index.ts | 1 +
src/api/resources/aiArtQrCode/index.ts | 1 +
.../aiBackgroundChanger/client/Client.ts | 338 +
.../aiBackgroundChanger/client/index.ts | 1 +
.../StatusImageSegmentationRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../resources/aiBackgroundChanger/index.ts | 1 +
.../client/Client.ts | 340 +
.../client/index.ts | 1 +
.../StatusEmailFaceInpaintingRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../index.ts | 1 +
.../aiImageWithAFace/client/Client.ts | 340 +
.../aiImageWithAFace/client/index.ts | 1 +
.../requests/StatusFaceInpaintingRequest.ts | 13 +
.../aiImageWithAFace/client/requests/index.ts | 1 +
src/api/resources/aiImageWithAFace/index.ts | 1 +
src/api/resources/bulkRunner/client/Client.ts | 352 +
src/api/resources/bulkRunner/client/index.ts | 1 +
.../requests/StatusBulkRunnerRequest.ts | 13 +
.../bulkRunner/client/requests/index.ts | 1 +
src/api/resources/bulkRunner/index.ts | 1 +
.../resources/chyronPlantBot/client/Client.ts | 338 +
.../resources/chyronPlantBot/client/index.ts | 1 +
.../requests/StatusChyronPlantRequest.ts | 13 +
.../chyronPlantBot/client/requests/index.ts | 1 +
src/api/resources/chyronPlantBot/index.ts | 1 +
.../compareAiImageGenerators/client/Client.ts | 338 +
.../compareAiImageGenerators/client/index.ts | 1 +
.../requests/StatusCompareText2ImgRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../compareAiImageGenerators/index.ts | 1 +
.../compareAiImageUpscalers/client/Client.ts | 338 +
.../compareAiImageUpscalers/client/index.ts | 1 +
.../StatusCompareAiUpscalersRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../compareAiImageUpscalers/index.ts | 1 +
.../compareAiTranslations/client/Client.ts | 334 +
.../compareAiTranslations/client/index.ts | 1 +
.../client/requests/StatusTranslateRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../resources/compareAiTranslations/index.ts | 1 +
.../compareAiVoiceGenerators/client/Client.ts | 338 +
.../compareAiVoiceGenerators/client/index.ts | 1 +
.../requests/StatusTextToSpeechRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../compareAiVoiceGenerators/index.ts | 1 +
.../copilotForYourEnterprise/client/Client.ts | 334 +
.../copilotForYourEnterprise/client/index.ts | 1 +
.../client/requests/StatusVideoBotsRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../copilotForYourEnterprise/index.ts | 1 +
.../copilotIntegrations/client/Client.ts | 210 +
.../copilotIntegrations/client/index.ts | 1 +
.../client/requests/CreateStreamRequest.ts | 120 +
.../client/requests/index.ts | 1 +
.../resources/copilotIntegrations/index.ts | 2 +
.../types/CreateStreamRequestAsrModel.ts | 37 +
.../types/CreateStreamRequestCitationStyle.ts | 40 +
.../CreateStreamRequestEmbeddingModel.ts | 26 +
.../types/CreateStreamRequestLipsyncModel.ts | 10 +
.../CreateStreamRequestOpenaiTtsModel.ts | 10 +
.../CreateStreamRequestOpenaiVoiceName.ts | 14 +
.../types/CreateStreamRequestSelectedModel.ts | 68 +
.../CreateStreamRequestTranslationModel.ts | 10 +
.../types/CreateStreamRequestTtsProvider.ts | 20 +
.../types/VideoBotsStreamResponse.ts | 12 +
.../copilotIntegrations/types/index.ts | 10 +
.../client/Client.ts | 344 +
.../client/index.ts | 1 +
.../requests/StatusSeoSummaryRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../index.ts | 1 +
.../editAnImageWithAiPrompt/client/Client.ts | 338 +
.../editAnImageWithAiPrompt/client/index.ts | 1 +
.../client/requests/StatusImg2ImgRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../editAnImageWithAiPrompt/index.ts | 1 +
src/api/resources/embeddings/client/Client.ts | 338 +
src/api/resources/embeddings/client/index.ts | 1 +
.../requests/StatusEmbeddingsRequest.ts | 13 +
.../embeddings/client/requests/index.ts | 1 +
src/api/resources/embeddings/index.ts | 1 +
src/api/resources/evaluator/client/Client.ts | 338 +
src/api/resources/evaluator/client/index.ts | 1 +
.../client/requests/StatusBulkEvalRequest.ts | 13 +
.../evaluator/client/requests/index.ts | 1 +
src/api/resources/evaluator/index.ts | 1 +
src/api/resources/functions/client/Client.ts | 334 +
src/api/resources/functions/client/index.ts | 1 +
.../client/requests/StatusFunctionsRequest.ts | 13 +
.../functions/client/requests/index.ts | 1 +
src/api/resources/functions/index.ts | 1 +
.../client/Client.ts | 340 +
.../client/index.ts | 1 +
.../requests/StatusRelatedQnaMakerRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../generatePeopleAlsoAskSeoContent/index.ts | 1 +
.../client/Client.ts | 340 +
.../client/index.ts | 1 +
.../requests/StatusObjectInpaintingRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../generateProductPhotoBackgrounds/index.ts | 1 +
src/api/resources/index.ts | 71 +
.../largeLanguageModelsGpt3/client/Client.ts | 334 +
.../largeLanguageModelsGpt3/client/index.ts | 1 +
.../requests/StatusCompareLlmRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../largeLanguageModelsGpt3/index.ts | 1 +
.../resources/letterWriter/client/Client.ts | 338 +
.../resources/letterWriter/client/index.ts | 1 +
.../requests/StatusLetterWriterRequest.ts | 13 +
.../letterWriter/client/requests/index.ts | 1 +
src/api/resources/letterWriter/index.ts | 1 +
src/api/resources/lipSyncing/client/Client.ts | 334 +
src/api/resources/lipSyncing/client/index.ts | 1 +
.../client/requests/StatusLipsyncRequest.ts | 13 +
.../lipSyncing/client/requests/index.ts | 1 +
src/api/resources/lipSyncing/index.ts | 1 +
.../lipsyncVideoWithAnyText/client/Client.ts | 338 +
.../lipsyncVideoWithAnyText/client/index.ts | 1 +
.../requests/StatusLipsyncTtsRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../lipsyncVideoWithAnyText/index.ts | 1 +
src/api/resources/misc/client/Client.ts | 252 +
src/api/resources/misc/client/index.ts | 1 +
.../requests/BotBroadcastRequestModel.ts | 28 +
.../resources/misc/client/requests/index.ts | 1 +
src/api/resources/misc/index.ts | 1 +
.../client/Client.ts | 338 +
.../client/index.ts | 1 +
.../StatusRelatedQnaMakerDocRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../peopleAlsoAskAnswersFromADoc/index.ts | 1 +
.../client/Client.ts | 338 +
.../client/index.ts | 1 +
.../StatusSocialLookupEmailRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../index.ts | 1 +
.../client/Client.ts | 340 +
.../client/index.ts | 1 +
.../requests/StatusGoogleImageGenRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../renderImageSearchResultsWithAi/index.ts | 1 +
.../searchYourDocsWithGpt/client/Client.ts | 338 +
.../searchYourDocsWithGpt/client/index.ts | 1 +
.../client/requests/StatusDocSearchRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../resources/searchYourDocsWithGpt/index.ts | 1 +
src/api/resources/smartGpt/client/Client.ts | 338 +
src/api/resources/smartGpt/client/index.ts | 1 +
.../client/requests/StatusSmartGptRequest.ts | 13 +
.../smartGpt/client/requests/index.ts | 1 +
src/api/resources/smartGpt/index.ts | 1 +
.../client/Client.ts | 338 +
.../client/index.ts | 1 +
.../client/requests/StatusAsrRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../speechRecognitionTranslation/index.ts | 1 +
.../summarizeYourDocsWithGpt/client/Client.ts | 338 +
.../summarizeYourDocsWithGpt/client/index.ts | 1 +
.../requests/StatusDocSummaryRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../summarizeYourDocsWithGpt/index.ts | 1 +
.../client/Client.ts | 338 +
.../client/index.ts | 1 +
.../requests/StatusDocExtractRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../syntheticDataMakerForVideosPdFs/index.ts | 1 +
.../textGuidedAudioGenerator/client/Client.ts | 338 +
.../textGuidedAudioGenerator/client/index.ts | 1 +
.../requests/StatusText2AudioRequest.ts | 13 +
.../client/requests/index.ts | 1 +
.../textGuidedAudioGenerator/index.ts | 1 +
.../resources/webSearchGpt3/client/Client.ts | 340 +
.../resources/webSearchGpt3/client/index.ts | 1 +
.../client/requests/StatusGoogleGptRequest.ts | 13 +
.../webSearchGpt3/client/requests/index.ts | 1 +
src/api/resources/webSearchGpt3/index.ts | 1 +
src/api/types/AggFunction.ts | 10 +
src/api/types/AggFunctionResult.ts | 12 +
src/api/types/AnimationPrompt.ts | 8 +
src/api/types/AsrChunk.ts | 9 +
src/api/types/AsrOutputJson.ts | 10 +
src/api/types/AsrPageOutput.ts | 11 +
src/api/types/AsrPageOutputOutputTextItem.ts | 7 +
src/api/types/AsrPageRequest.ts | 26 +
src/api/types/AsrPageRequestOutputFormat.ts | 12 +
src/api/types/AsrPageRequestSelectedModel.ts | 34 +
.../types/AsrPageRequestTranslationModel.ts | 10 +
src/api/types/AsrPageResponse.ts | 16 +
src/api/types/AsrPageStatusResponse.ts | 22 +
src/api/types/AsyncApiResponseModelV3.ts | 14 +
src/api/types/BalanceResponse.ts | 8 +
src/api/types/BotBroadcastFilters.ts | 14 +
src/api/types/BulkEvalPageOutput.ts | 12 +
src/api/types/BulkEvalPageRequest.ts | 32 +
.../types/BulkEvalPageRequestSelectedModel.ts | 68 +
src/api/types/BulkEvalPageResponse.ts | 16 +
src/api/types/BulkEvalPageStatusResponse.ts | 22 +
src/api/types/BulkRunnerPageOutput.ts | 12 +
src/api/types/BulkRunnerPageRequest.ts | 29 +
src/api/types/BulkRunnerPageResponse.ts | 16 +
src/api/types/BulkRunnerPageStatusResponse.ts | 22 +
src/api/types/ButtonPressed.ts | 10 +
src/api/types/CalledFunctionResponse.ts | 11 +
.../ChatCompletionContentPartImageParam.ts | 9 +
.../ChatCompletionContentPartTextParam.ts | 7 +
src/api/types/ChyronPlantPageOutput.ts | 11 +
src/api/types/ChyronPlantPageRequest.ts | 15 +
src/api/types/ChyronPlantPageResponse.ts | 16 +
.../types/ChyronPlantPageStatusResponse.ts | 22 +
src/api/types/CompareLlmPageOutput.ts | 10 +
src/api/types/CompareLlmPageRequest.ts | 20 +
...CompareLlmPageRequestResponseFormatType.ts | 10 +
...CompareLlmPageRequestSelectedModelsItem.ts | 68 +
src/api/types/CompareLlmPageResponse.ts | 16 +
src/api/types/CompareLlmPageStatusResponse.ts | 22 +
src/api/types/CompareText2ImgPageOutput.ts | 10 +
src/api/types/CompareText2ImgPageRequest.ts | 27 +
...reText2ImgPageRequestSelectedModelsItem.ts | 34 +
src/api/types/CompareText2ImgPageResponse.ts | 16 +
.../CompareText2ImgPageStatusResponse.ts | 22 +
src/api/types/CompareUpscalerPageOutput.ts | 13 +
src/api/types/CompareUpscalerPageRequest.ts | 20 +
...reUpscalerPageRequestSelectedModelsItem.ts | 18 +
src/api/types/CompareUpscalerPageResponse.ts | 16 +
.../CompareUpscalerPageStatusResponse.ts | 22 +
src/api/types/ConsoleLogs.ts | 10 +
src/api/types/Content.ts | 7 +
src/api/types/ConversationEntry.ts | 11 +
src/api/types/ConversationEntryContentItem.ts | 19 +
src/api/types/ConversationStart.ts | 18 +
src/api/types/CreateStreamResponse.ts | 8 +
src/api/types/DeforumSdPageOutput.ts | 10 +
src/api/types/DeforumSdPageRequest.ts | 24 +
.../DeforumSdPageRequestSelectedModel.ts | 10 +
src/api/types/DeforumSdPageResponse.ts | 16 +
src/api/types/DeforumSdPageStatusResponse.ts | 22 +
src/api/types/Detail.ts | 11 +
src/api/types/DocExtractPageOutput.ts | 9 +
src/api/types/DocExtractPageRequest.ts | 28 +
.../DocExtractPageRequestSelectedAsrModel.ts | 34 +
.../DocExtractPageRequestSelectedModel.ts | 68 +
src/api/types/DocExtractPageResponse.ts | 16 +
src/api/types/DocExtractPageStatusResponse.ts | 22 +
src/api/types/DocSearchPageOutput.ts | 13 +
src/api/types/DocSearchPageRequest.ts | 34 +
.../DocSearchPageRequestCitationStyle.ts | 40 +
.../DocSearchPageRequestEmbeddingModel.ts | 26 +
.../types/DocSearchPageRequestKeywordQuery.ts | 5 +
.../DocSearchPageRequestSelectedModel.ts | 68 +
src/api/types/DocSearchPageResponse.ts | 16 +
src/api/types/DocSearchPageStatusResponse.ts | 22 +
src/api/types/DocSummaryPageOutput.ts | 12 +
src/api/types/DocSummaryPageRequest.ts | 24 +
.../DocSummaryPageRequestSelectedAsrModel.ts | 34 +
.../DocSummaryPageRequestSelectedModel.ts | 68 +
src/api/types/DocSummaryPageResponse.ts | 16 +
src/api/types/DocSummaryPageStatusResponse.ts | 22 +
.../types/EmailFaceInpaintingPageOutput.ts | 15 +
.../types/EmailFaceInpaintingPageRequest.ts | 35 +
...lFaceInpaintingPageRequestSelectedModel.ts | 12 +
.../types/EmailFaceInpaintingPageResponse.ts | 16 +
.../EmailFaceInpaintingPageStatusResponse.ts | 22 +
src/api/types/EmbeddingsPageOutput.ts | 10 +
src/api/types/EmbeddingsPageRequest.ts | 14 +
.../EmbeddingsPageRequestSelectedModel.ts | 26 +
src/api/types/EmbeddingsPageResponse.ts | 16 +
src/api/types/EmbeddingsPageStatusResponse.ts | 22 +
src/api/types/EvalPrompt.ts | 8 +
src/api/types/FaceInpaintingPageOutput.ts | 13 +
src/api/types/FaceInpaintingPageRequest.ts | 26 +
.../FaceInpaintingPageRequestSelectedModel.ts | 12 +
src/api/types/FaceInpaintingPageResponse.ts | 16 +
.../types/FaceInpaintingPageStatusResponse.ts | 22 +
src/api/types/FailedReponseModelV2.ts | 9 +
src/api/types/FailedResponseDetail.ts | 14 +
src/api/types/FinalResponse.ts | 24 +
src/api/types/Function.ts | 40 +
src/api/types/FunctionsPageOutput.ts | 14 +
src/api/types/FunctionsPageRequest.ts | 13 +
src/api/types/FunctionsPageResponse.ts | 16 +
src/api/types/FunctionsPageStatusResponse.ts | 22 +
src/api/types/GenericErrorResponse.ts | 9 +
src/api/types/GenericErrorResponseDetail.ts | 7 +
src/api/types/GoogleGptPageOutput.ts | 14 +
src/api/types/GoogleGptPageRequest.ts | 38 +
.../GoogleGptPageRequestEmbeddingModel.ts | 26 +
.../GoogleGptPageRequestSelectedModel.ts | 68 +
src/api/types/GoogleGptPageResponse.ts | 16 +
src/api/types/GoogleGptPageStatusResponse.ts | 22 +
src/api/types/GoogleImageGenPageOutput.ts | 12 +
src/api/types/GoogleImageGenPageRequest.ts | 26 +
.../GoogleImageGenPageRequestSelectedModel.ts | 32 +
src/api/types/GoogleImageGenPageResponse.ts | 16 +
.../types/GoogleImageGenPageStatusResponse.ts | 22 +
src/api/types/HttpValidationError.ts | 9 +
src/api/types/ImageSegmentationPageOutput.ts | 13 +
src/api/types/ImageSegmentationPageRequest.ts | 20 +
...ageSegmentationPageRequestSelectedModel.ts | 10 +
.../types/ImageSegmentationPageResponse.ts | 16 +
.../ImageSegmentationPageStatusResponse.ts | 22 +
src/api/types/ImageUrl.ts | 10 +
src/api/types/Img2ImgPageOutput.ts | 10 +
src/api/types/Img2ImgPageRequest.ts | 26 +
...g2ImgPageRequestSelectedControlnetModel.ts | 19 +
...gPageRequestSelectedControlnetModelItem.ts | 30 +
.../types/Img2ImgPageRequestSelectedModel.ts | 32 +
src/api/types/Img2ImgPageResponse.ts | 16 +
src/api/types/Img2ImgPageStatusResponse.ts | 22 +
src/api/types/LetterWriterPageOutput.ts | 13 +
src/api/types/LetterWriterPageRequest.ts | 26 +
src/api/types/LetterWriterPageResponse.ts | 16 +
.../types/LetterWriterPageStatusResponse.ts | 22 +
src/api/types/Level.ts | 10 +
src/api/types/LipsyncPageOutput.ts | 10 +
src/api/types/LipsyncPageRequest.ts | 20 +
.../types/LipsyncPageRequestSelectedModel.ts | 10 +
src/api/types/LipsyncPageResponse.ts | 16 +
src/api/types/LipsyncPageStatusResponse.ts | 22 +
src/api/types/LipsyncTtsPageOutput.ts | 11 +
src/api/types/LipsyncTtsPageRequest.ts | 39 +
.../LipsyncTtsPageRequestOpenaiTtsModel.ts | 10 +
.../LipsyncTtsPageRequestOpenaiVoiceName.ts | 14 +
.../LipsyncTtsPageRequestSelectedModel.ts | 10 +
.../types/LipsyncTtsPageRequestTtsProvider.ts | 20 +
src/api/types/LipsyncTtsPageResponse.ts | 16 +
src/api/types/LipsyncTtsPageStatusResponse.ts | 22 +
src/api/types/LlmTools.ts | 8 +
src/api/types/MessagePart.ts | 19 +
src/api/types/ObjectInpaintingPageOutput.ts | 12 +
src/api/types/ObjectInpaintingPageRequest.ts | 27 +
...bjectInpaintingPageRequestSelectedModel.ts | 12 +
src/api/types/ObjectInpaintingPageResponse.ts | 16 +
.../ObjectInpaintingPageStatusResponse.ts | 22 +
src/api/types/Preprocess.ts | 16 +
src/api/types/Prompt.ts | 7 +
src/api/types/PromptTreeNode.ts | 10 +
src/api/types/QrCodeGeneratorPageOutput.ts | 13 +
src/api/types/QrCodeGeneratorPageRequest.ts | 38 +
...eRequestImagePromptControlnetModelsItem.ts | 30 +
...rPageRequestSelectedControlnetModelItem.ts | 30 +
...QrCodeGeneratorPageRequestSelectedModel.ts | 34 +
src/api/types/QrCodeGeneratorPageResponse.ts | 16 +
.../QrCodeGeneratorPageStatusResponse.ts | 22 +
src/api/types/RecipeFunction.ts | 12 +
src/api/types/RecipeRunState.ts | 15 +
src/api/types/RelatedDocSearchResponse.ts | 13 +
src/api/types/RelatedGoogleGptResponse.ts | 14 +
src/api/types/RelatedQnADocPageOutput.ts | 11 +
src/api/types/RelatedQnADocPageRequest.ts | 40 +
.../RelatedQnADocPageRequestCitationStyle.ts | 40 +
.../RelatedQnADocPageRequestEmbeddingModel.ts | 26 +
.../RelatedQnADocPageRequestKeywordQuery.ts | 5 +
.../RelatedQnADocPageRequestSelectedModel.ts | 68 +
src/api/types/RelatedQnADocPageResponse.ts | 16 +
.../types/RelatedQnADocPageStatusResponse.ts | 22 +
src/api/types/RelatedQnAPageOutput.ts | 11 +
src/api/types/RelatedQnAPageRequest.ts | 38 +
.../RelatedQnAPageRequestEmbeddingModel.ts | 26 +
.../RelatedQnAPageRequestSelectedModel.ts | 68 +
src/api/types/RelatedQnAPageResponse.ts | 16 +
src/api/types/RelatedQnAPageStatusResponse.ts | 22 +
src/api/types/ReplyButton.ts | 8 +
src/api/types/ResponseModel.ts | 21 +
.../types/ResponseModelFinalKeywordQuery.ts | 5 +
src/api/types/ResponseModelFinalPrompt.ts | 7 +
src/api/types/Role.ts | 11 +
src/api/types/RunSettings.ts | 10 +
src/api/types/RunSettingsRetentionPolicy.ts | 13 +
src/api/types/RunStart.ts | 16 +
src/api/types/SadTalkerSettings.ts | 22 +
src/api/types/Scheduler.ts | 36 +
src/api/types/SearchReference.ts | 10 +
src/api/types/SeoSummaryPageOutput.ts | 14 +
src/api/types/SeoSummaryPageRequest.ts | 30 +
.../SeoSummaryPageRequestSelectedModel.ts | 68 +
src/api/types/SeoSummaryPageResponse.ts | 16 +
src/api/types/SeoSummaryPageStatusResponse.ts | 22 +
src/api/types/SerpSearchLocation.ts | 489 ++
src/api/types/SerpSearchType.ts | 16 +
src/api/types/SmartGptPageOutput.ts | 11 +
src/api/types/SmartGptPageRequest.ts | 22 +
.../types/SmartGptPageRequestSelectedModel.ts | 68 +
src/api/types/SmartGptPageResponse.ts | 16 +
src/api/types/SmartGptPageStatusResponse.ts | 22 +
src/api/types/SocialLookupEmailPageOutput.ts | 12 +
src/api/types/SocialLookupEmailPageRequest.ts | 20 +
...cialLookupEmailPageRequestSelectedModel.ts | 68 +
.../types/SocialLookupEmailPageResponse.ts | 16 +
.../SocialLookupEmailPageStatusResponse.ts | 22 +
src/api/types/StreamError.ts | 10 +
src/api/types/Text2AudioPageOutput.ts | 10 +
src/api/types/Text2AudioPageRequest.ts | 21 +
src/api/types/Text2AudioPageResponse.ts | 16 +
src/api/types/Text2AudioPageStatusResponse.ts | 22 +
src/api/types/TextToSpeechPageOutput.ts | 10 +
src/api/types/TextToSpeechPageRequest.ts | 32 +
.../TextToSpeechPageRequestOpenaiTtsModel.ts | 10 +
.../TextToSpeechPageRequestOpenaiVoiceName.ts | 14 +
.../TextToSpeechPageRequestTtsProvider.ts | 20 +
src/api/types/TextToSpeechPageResponse.ts | 16 +
.../types/TextToSpeechPageStatusResponse.ts | 22 +
src/api/types/TrainingDataModel.ts | 8 +
src/api/types/TranslationPageOutput.ts | 10 +
src/api/types/TranslationPageRequest.ts | 21 +
.../TranslationPageRequestSelectedModel.ts | 10 +
src/api/types/TranslationPageResponse.ts | 16 +
.../types/TranslationPageStatusResponse.ts | 22 +
src/api/types/Trigger.ts | 13 +
src/api/types/ValidationError.ts | 11 +
src/api/types/ValidationErrorLocItem.ts | 5 +
src/api/types/Vcard.ts | 32 +
src/api/types/VideoBotsPageOutput.ts | 22 +
.../VideoBotsPageOutputFinalKeywordQuery.ts | 5 +
.../types/VideoBotsPageOutputFinalPrompt.ts | 7 +
src/api/types/VideoBotsPageRequest.ts | 82 +
src/api/types/VideoBotsPageRequestAsrModel.ts | 37 +
.../VideoBotsPageRequestCitationStyle.ts | 40 +
.../VideoBotsPageRequestEmbeddingModel.ts | 26 +
.../types/VideoBotsPageRequestLipsyncModel.ts | 10 +
.../VideoBotsPageRequestOpenaiTtsModel.ts | 10 +
.../VideoBotsPageRequestOpenaiVoiceName.ts | 14 +
.../VideoBotsPageRequestSelectedModel.ts | 68 +
.../VideoBotsPageRequestTranslationModel.ts | 10 +
.../types/VideoBotsPageRequestTtsProvider.ts | 20 +
src/api/types/VideoBotsPageResponse.ts | 16 +
src/api/types/VideoBotsPageStatusResponse.ts | 22 +
src/api/types/index.ts | 250 +
src/core/auth/BasicAuth.ts | 31 +
src/core/auth/BearerToken.ts | 15 +
src/core/auth/index.ts | 2 +
src/core/fetcher/APIResponse.ts | 12 +
src/core/fetcher/Fetcher.ts | 137 +
src/core/fetcher/Supplier.ts | 11 +
src/core/fetcher/createRequestUrl.ts | 10 +
src/core/fetcher/getFetchFn.ts | 19 +
src/core/fetcher/getHeader.ts | 8 +
src/core/fetcher/getRequestBody.ts | 34 +
src/core/fetcher/getResponseBody.ts | 28 +
src/core/fetcher/index.ts | 5 +
src/core/fetcher/makeRequest.ts | 41 +
src/core/fetcher/requestWithRetries.ts | 21 +
src/core/fetcher/signals.ts | 38 +
src/core/index.ts | 4 +
src/core/runtime/index.ts | 1 +
src/core/runtime/runtime.ts | 124 +
src/core/schemas/Schema.ts | 93 +
src/core/schemas/builders/date/date.ts | 65 +
src/core/schemas/builders/date/index.ts | 1 +
src/core/schemas/builders/enum/enum.ts | 43 +
src/core/schemas/builders/enum/index.ts | 1 +
src/core/schemas/builders/index.ts | 13 +
src/core/schemas/builders/lazy/index.ts | 3 +
src/core/schemas/builders/lazy/lazy.ts | 32 +
src/core/schemas/builders/lazy/lazyObject.ts | 20 +
src/core/schemas/builders/list/index.ts | 1 +
src/core/schemas/builders/list/list.ts | 73 +
.../builders/literals/booleanLiteral.ts | 29 +
src/core/schemas/builders/literals/index.ts | 2 +
.../builders/literals/stringLiteral.ts | 29 +
.../object-like/getObjectLikeUtils.ts | 79 +
.../schemas/builders/object-like/index.ts | 2 +
.../schemas/builders/object-like/types.ts | 11 +
src/core/schemas/builders/object/index.ts | 22 +
src/core/schemas/builders/object/object.ts | 321 +
.../object/objectWithoutOptionalProperties.ts | 18 +
src/core/schemas/builders/object/property.ts | 23 +
src/core/schemas/builders/object/types.ts | 72 +
src/core/schemas/builders/primitives/any.ts | 4 +
.../schemas/builders/primitives/boolean.ts | 25 +
src/core/schemas/builders/primitives/index.ts | 5 +
.../schemas/builders/primitives/number.ts | 25 +
.../schemas/builders/primitives/string.ts | 25 +
.../schemas/builders/primitives/unknown.ts | 4 +
src/core/schemas/builders/record/index.ts | 2 +
src/core/schemas/builders/record/record.ts | 130 +
src/core/schemas/builders/record/types.ts | 17 +
.../builders/schema-utils/JsonError.ts | 9 +
.../builders/schema-utils/ParseError.ts | 9 +
.../builders/schema-utils/getSchemaUtils.ts | 99 +
.../schemas/builders/schema-utils/index.ts | 4 +
.../schema-utils/stringifyValidationErrors.ts | 8 +
src/core/schemas/builders/set/index.ts | 1 +
src/core/schemas/builders/set/set.ts | 43 +
.../builders/undiscriminated-union/index.ts | 6 +
.../builders/undiscriminated-union/types.ts | 10 +
.../undiscriminatedUnion.ts | 60 +
.../schemas/builders/union/discriminant.ts | 14 +
src/core/schemas/builders/union/index.ts | 10 +
src/core/schemas/builders/union/types.ts | 26 +
src/core/schemas/builders/union/union.ts | 170 +
src/core/schemas/index.ts | 2 +
src/core/schemas/utils/MaybePromise.ts | 1 +
.../addQuestionMarksToNullableProperties.ts | 15 +
.../utils/createIdentitySchemaCreator.ts | 21 +
src/core/schemas/utils/entries.ts | 3 +
src/core/schemas/utils/filterObject.ts | 10 +
.../utils/getErrorMessageForIncorrectType.ts | 21 +
src/core/schemas/utils/isPlainObject.ts | 17 +
src/core/schemas/utils/keys.ts | 3 +
src/core/schemas/utils/maybeSkipValidation.ts | 38 +
src/core/schemas/utils/partition.ts | 12 +
src/errors/GooeyError.ts | 45 +
src/errors/GooeyTimeoutError.ts | 10 +
src/errors/index.ts | 2 +
src/index.ts | 3 +
src/serialization/index.ts | 2 +
.../copilotIntegrations/client/index.ts | 1 +
.../client/requests/CreateStreamRequest.ts | 180 +
.../client/requests/index.ts | 1 +
.../resources/copilotIntegrations/index.ts | 2 +
.../types/CreateStreamRequestAsrModel.ts | 43 +
.../types/CreateStreamRequestCitationStyle.ts | 49 +
.../CreateStreamRequestEmbeddingModel.ts | 35 +
.../types/CreateStreamRequestLipsyncModel.ts | 16 +
.../CreateStreamRequestOpenaiTtsModel.ts | 16 +
.../CreateStreamRequestOpenaiVoiceName.ts | 16 +
.../types/CreateStreamRequestSelectedModel.ts | 77 +
.../CreateStreamRequestTranslationModel.ts | 16 +
.../types/CreateStreamRequestTtsProvider.ts | 16 +
.../types/VideoBotsStreamResponse.ts | 21 +
.../copilotIntegrations/types/index.ts | 10 +
src/serialization/resources/index.ts | 5 +
.../resources/misc/client/index.ts | 1 +
.../requests/BotBroadcastRequestModel.ts | 32 +
.../resources/misc/client/requests/index.ts | 1 +
src/serialization/resources/misc/index.ts | 1 +
src/serialization/types/AggFunction.ts | 21 +
src/serialization/types/AggFunctionResult.ts | 27 +
src/serialization/types/AnimationPrompt.ts | 20 +
src/serialization/types/AsrChunk.ts | 22 +
src/serialization/types/AsrOutputJson.ts | 21 +
src/serialization/types/AsrPageOutput.ts | 30 +
.../types/AsrPageOutputOutputTextItem.ts | 17 +
src/serialization/types/AsrPageRequest.ts | 48 +
.../types/AsrPageRequestOutputFormat.ts | 16 +
.../types/AsrPageRequestSelectedModel.ts | 43 +
.../types/AsrPageRequestTranslationModel.ts | 16 +
src/serialization/types/AsrPageResponse.ts | 25 +
.../types/AsrPageStatusResponse.ts | 34 +
.../types/AsyncApiResponseModelV3.ts | 26 +
src/serialization/types/BalanceResponse.ts | 18 +
.../types/BotBroadcastFilters.ts | 38 +
src/serialization/types/BulkEvalPageOutput.ts | 37 +
.../types/BulkEvalPageRequest.ts | 47 +
.../types/BulkEvalPageRequestSelectedModel.ts | 77 +
.../types/BulkEvalPageResponse.ts | 27 +
.../types/BulkEvalPageStatusResponse.ts | 34 +
.../types/BulkRunnerPageOutput.ts | 31 +
.../types/BulkRunnerPageRequest.ts | 42 +
.../types/BulkRunnerPageResponse.ts | 27 +
.../types/BulkRunnerPageStatusResponse.ts | 34 +
src/serialization/types/ButtonPressed.ts | 20 +
.../types/CalledFunctionResponse.ts | 25 +
.../ChatCompletionContentPartImageParam.ts | 21 +
.../ChatCompletionContentPartTextParam.ts | 20 +
.../types/ChyronPlantPageOutput.ts | 28 +
.../types/ChyronPlantPageRequest.ts | 32 +
.../types/ChyronPlantPageResponse.ts | 27 +
.../types/ChyronPlantPageStatusResponse.ts | 34 +
.../types/CompareLlmPageOutput.ts | 29 +
.../types/CompareLlmPageRequest.ts | 50 +
...CompareLlmPageRequestResponseFormatType.ts | 16 +
...CompareLlmPageRequestSelectedModelsItem.ts | 77 +
.../types/CompareLlmPageResponse.ts | 27 +
.../types/CompareLlmPageStatusResponse.ts | 34 +
.../types/CompareText2ImgPageOutput.ts | 29 +
.../types/CompareText2ImgPageRequest.ts | 61 +
...reText2ImgPageRequestSelectedModelsItem.ts | 43 +
.../types/CompareText2ImgPageResponse.ts | 27 +
.../CompareText2ImgPageStatusResponse.ts | 34 +
.../types/CompareUpscalerPageOutput.ts | 34 +
.../types/CompareUpscalerPageRequest.ts | 43 +
...reUpscalerPageRequestSelectedModelsItem.ts | 16 +
.../types/CompareUpscalerPageResponse.ts | 27 +
.../CompareUpscalerPageStatusResponse.ts | 34 +
src/serialization/types/ConsoleLogs.ts | 21 +
src/serialization/types/Content.ts | 18 +
src/serialization/types/ConversationEntry.ts | 26 +
.../types/ConversationEntryContentItem.ts | 34 +
src/serialization/types/ConversationStart.ts | 30 +
.../types/CreateStreamResponse.ts | 20 +
.../types/DeforumSdPageOutput.ts | 26 +
.../types/DeforumSdPageRequest.ts | 52 +
.../DeforumSdPageRequestSelectedModel.ts | 16 +
.../types/DeforumSdPageResponse.ts | 27 +
.../types/DeforumSdPageStatusResponse.ts | 34 +
src/serialization/types/Detail.ts | 17 +
.../types/DocExtractPageOutput.ts | 24 +
.../types/DocExtractPageRequest.ts | 58 +
.../DocExtractPageRequestSelectedAsrModel.ts | 43 +
.../DocExtractPageRequestSelectedModel.ts | 77 +
.../types/DocExtractPageResponse.ts | 27 +
.../types/DocExtractPageStatusResponse.ts | 34 +
.../types/DocSearchPageOutput.ts | 33 +
.../types/DocSearchPageRequest.ts | 66 +
.../DocSearchPageRequestCitationStyle.ts | 49 +
.../DocSearchPageRequestEmbeddingModel.ts | 35 +
.../types/DocSearchPageRequestKeywordQuery.ts | 19 +
.../DocSearchPageRequestSelectedModel.ts | 77 +
.../types/DocSearchPageResponse.ts | 27 +
.../types/DocSearchPageStatusResponse.ts | 34 +
.../types/DocSummaryPageOutput.ts | 33 +
.../types/DocSummaryPageRequest.ts | 58 +
.../DocSummaryPageRequestSelectedAsrModel.ts | 43 +
.../DocSummaryPageRequestSelectedModel.ts | 77 +
.../types/DocSummaryPageResponse.ts | 27 +
.../types/DocSummaryPageStatusResponse.ts | 34 +
.../types/EmailFaceInpaintingPageOutput.ts | 39 +
.../types/EmailFaceInpaintingPageRequest.ts | 76 +
...lFaceInpaintingPageRequestSelectedModel.ts | 16 +
.../types/EmailFaceInpaintingPageResponse.ts | 27 +
.../EmailFaceInpaintingPageStatusResponse.ts | 34 +
.../types/EmbeddingsPageOutput.ts | 26 +
.../types/EmbeddingsPageRequest.ts | 31 +
.../EmbeddingsPageRequestSelectedModel.ts | 35 +
.../types/EmbeddingsPageResponse.ts | 27 +
.../types/EmbeddingsPageStatusResponse.ts | 34 +
src/serialization/types/EvalPrompt.ts | 20 +
.../types/FaceInpaintingPageOutput.ts | 35 +
.../types/FaceInpaintingPageRequest.ts | 55 +
.../FaceInpaintingPageRequestSelectedModel.ts | 16 +
.../types/FaceInpaintingPageResponse.ts | 27 +
.../types/FaceInpaintingPageStatusResponse.ts | 34 +
.../types/FailedReponseModelV2.ts | 21 +
.../types/FailedResponseDetail.ts | 26 +
src/serialization/types/FinalResponse.ts | 34 +
src/serialization/types/Function.ts | 46 +
.../types/FunctionsPageOutput.ts | 31 +
.../types/FunctionsPageRequest.ts | 25 +
.../types/FunctionsPageResponse.ts | 27 +
.../types/FunctionsPageStatusResponse.ts | 34 +
.../types/GenericErrorResponse.ts | 21 +
.../types/GenericErrorResponseDetail.ts | 20 +
.../types/GoogleGptPageOutput.ts | 38 +
.../types/GoogleGptPageRequest.ts | 73 +
.../GoogleGptPageRequestEmbeddingModel.ts | 35 +
.../GoogleGptPageRequestSelectedModel.ts | 77 +
.../types/GoogleGptPageResponse.ts | 27 +
.../types/GoogleGptPageStatusResponse.ts | 34 +
.../types/GoogleImageGenPageOutput.ts | 30 +
.../types/GoogleImageGenPageRequest.ts | 57 +
.../GoogleImageGenPageRequestSelectedModel.ts | 41 +
.../types/GoogleImageGenPageResponse.ts | 27 +
.../types/GoogleImageGenPageStatusResponse.ts | 34 +
.../types/HttpValidationError.ts | 21 +
.../types/ImageSegmentationPageOutput.ts | 32 +
.../types/ImageSegmentationPageRequest.ts | 46 +
...ageSegmentationPageRequestSelectedModel.ts | 16 +
.../types/ImageSegmentationPageResponse.ts | 27 +
.../ImageSegmentationPageStatusResponse.ts | 34 +
src/serialization/types/ImageUrl.ts | 21 +
src/serialization/types/Img2ImgPageOutput.ts | 26 +
src/serialization/types/Img2ImgPageRequest.ts | 62 +
...g2ImgPageRequestSelectedControlnetModel.ts | 42 +
...gPageRequestSelectedControlnetModelItem.ts | 39 +
.../types/Img2ImgPageRequestSelectedModel.ts | 41 +
.../types/Img2ImgPageResponse.ts | 27 +
.../types/Img2ImgPageStatusResponse.ts | 34 +
.../types/LetterWriterPageOutput.ts | 32 +
.../types/LetterWriterPageRequest.ts | 61 +
.../types/LetterWriterPageResponse.ts | 27 +
.../types/LetterWriterPageStatusResponse.ts | 34 +
src/serialization/types/Level.ts | 16 +
src/serialization/types/LipsyncPageOutput.ts | 26 +
src/serialization/types/LipsyncPageRequest.ts | 44 +
.../types/LipsyncPageRequestSelectedModel.ts | 16 +
.../types/LipsyncPageResponse.ts | 27 +
.../types/LipsyncPageStatusResponse.ts | 34 +
.../types/LipsyncTtsPageOutput.ts | 28 +
.../types/LipsyncTtsPageRequest.ts | 89 +
.../LipsyncTtsPageRequestOpenaiTtsModel.ts | 16 +
.../LipsyncTtsPageRequestOpenaiVoiceName.ts | 16 +
.../LipsyncTtsPageRequestSelectedModel.ts | 16 +
.../types/LipsyncTtsPageRequestTtsProvider.ts | 16 +
.../types/LipsyncTtsPageResponse.ts | 27 +
.../types/LipsyncTtsPageStatusResponse.ts | 34 +
src/serialization/types/LlmTools.ts | 14 +
src/serialization/types/MessagePart.ts | 34 +
.../types/ObjectInpaintingPageOutput.ts | 30 +
.../types/ObjectInpaintingPageRequest.ts | 57 +
...bjectInpaintingPageRequestSelectedModel.ts | 16 +
.../types/ObjectInpaintingPageResponse.ts | 27 +
.../ObjectInpaintingPageStatusResponse.ts | 34 +
src/serialization/types/Preprocess.ts | 14 +
src/serialization/types/Prompt.ts | 15 +
src/serialization/types/PromptTreeNode.ts | 21 +
.../types/QrCodeGeneratorPageOutput.ts | 32 +
.../types/QrCodeGeneratorPageRequest.ts | 92 +
...eRequestImagePromptControlnetModelsItem.ts | 39 +
...rPageRequestSelectedControlnetModelItem.ts | 39 +
...QrCodeGeneratorPageRequestSelectedModel.ts | 43 +
.../types/QrCodeGeneratorPageResponse.ts | 27 +
.../QrCodeGeneratorPageStatusResponse.ts | 34 +
src/serialization/types/RecipeFunction.ts | 21 +
src/serialization/types/RecipeRunState.ts | 14 +
.../types/RelatedDocSearchResponse.ts | 29 +
.../types/RelatedGoogleGptResponse.ts | 34 +
.../types/RelatedQnADocPageOutput.ts | 32 +
.../types/RelatedQnADocPageRequest.ts | 79 +
.../RelatedQnADocPageRequestCitationStyle.ts | 49 +
.../RelatedQnADocPageRequestEmbeddingModel.ts | 35 +
.../RelatedQnADocPageRequestKeywordQuery.ts | 19 +
.../RelatedQnADocPageRequestSelectedModel.ts | 77 +
.../types/RelatedQnADocPageResponse.ts | 27 +
.../types/RelatedQnADocPageStatusResponse.ts | 34 +
.../types/RelatedQnAPageOutput.ts | 32 +
.../types/RelatedQnAPageRequest.ts | 73 +
.../RelatedQnAPageRequestEmbeddingModel.ts | 35 +
.../RelatedQnAPageRequestSelectedModel.ts | 77 +
.../types/RelatedQnAPageResponse.ts | 27 +
.../types/RelatedQnAPageStatusResponse.ts | 34 +
src/serialization/types/ReplyButton.ts | 20 +
src/serialization/types/ResponseModel.ts | 70 +
.../types/ResponseModelFinalKeywordQuery.ts | 19 +
.../types/ResponseModelFinalPrompt.ts | 17 +
src/serialization/types/Role.ts | 17 +
src/serialization/types/RunSettings.ts | 19 +
.../types/RunSettingsRetentionPolicy.ts | 16 +
src/serialization/types/RunStart.ts | 26 +
src/serialization/types/SadTalkerSettings.ts | 43 +
src/serialization/types/Scheduler.ts | 43 +
src/serialization/types/SearchReference.ts | 24 +
.../types/SeoSummaryPageOutput.ts | 40 +
.../types/SeoSummaryPageRequest.ts | 65 +
.../SeoSummaryPageRequestSelectedModel.ts | 77 +
.../types/SeoSummaryPageResponse.ts | 27 +
.../types/SeoSummaryPageStatusResponse.ts | 34 +
src/serialization/types/SerpSearchLocation.ts | 495 ++
src/serialization/types/SerpSearchType.ts | 14 +
src/serialization/types/SmartGptPageOutput.ts | 31 +
.../types/SmartGptPageRequest.ts | 47 +
.../types/SmartGptPageRequestSelectedModel.ts | 77 +
.../types/SmartGptPageResponse.ts | 27 +
.../types/SmartGptPageStatusResponse.ts | 34 +
.../types/SocialLookupEmailPageOutput.ts | 33 +
.../types/SocialLookupEmailPageRequest.ts | 43 +
...cialLookupEmailPageRequestSelectedModel.ts | 77 +
.../types/SocialLookupEmailPageResponse.ts | 27 +
.../SocialLookupEmailPageStatusResponse.ts | 34 +
src/serialization/types/StreamError.ts | 20 +
.../types/Text2AudioPageOutput.ts | 29 +
.../types/Text2AudioPageRequest.ts | 47 +
.../types/Text2AudioPageResponse.ts | 27 +
.../types/Text2AudioPageStatusResponse.ts | 34 +
.../types/TextToSpeechPageOutput.ts | 26 +
.../types/TextToSpeechPageRequest.ts | 76 +
.../TextToSpeechPageRequestOpenaiTtsModel.ts | 16 +
.../TextToSpeechPageRequestOpenaiVoiceName.ts | 16 +
.../TextToSpeechPageRequestTtsProvider.ts | 16 +
.../types/TextToSpeechPageResponse.ts | 27 +
.../types/TextToSpeechPageStatusResponse.ts | 34 +
src/serialization/types/TrainingDataModel.ts | 22 +
.../types/TranslationPageOutput.ts | 29 +
.../types/TranslationPageRequest.ts | 37 +
.../TranslationPageRequestSelectedModel.ts | 16 +
.../types/TranslationPageResponse.ts | 27 +
.../types/TranslationPageStatusResponse.ts | 34 +
src/serialization/types/Trigger.ts | 16 +
src/serialization/types/ValidationError.ts | 23 +
.../types/ValidationErrorLocItem.ts | 16 +
src/serialization/types/Vcard.ts | 70 +
.../types/VideoBotsPageOutput.ts | 78 +
.../VideoBotsPageOutputFinalKeywordQuery.ts | 19 +
.../types/VideoBotsPageOutputFinalPrompt.ts | 17 +
.../types/VideoBotsPageRequest.ts | 170 +
.../types/VideoBotsPageRequestAsrModel.ts | 43 +
.../VideoBotsPageRequestCitationStyle.ts | 49 +
.../VideoBotsPageRequestEmbeddingModel.ts | 35 +
.../types/VideoBotsPageRequestLipsyncModel.ts | 16 +
.../VideoBotsPageRequestOpenaiTtsModel.ts | 16 +
.../VideoBotsPageRequestOpenaiVoiceName.ts | 16 +
.../VideoBotsPageRequestSelectedModel.ts | 77 +
.../VideoBotsPageRequestTranslationModel.ts | 16 +
.../types/VideoBotsPageRequestTtsProvider.ts | 16 +
.../types/VideoBotsPageResponse.ts | 27 +
.../types/VideoBotsPageStatusResponse.ts | 34 +
src/serialization/types/index.ts | 250 +
tests/custom.test.ts | 13 +
tsconfig.json | 17 +
yarn.lock | 2710 +++++++
808 files changed, 40970 insertions(+), 201 deletions(-)
create mode 100644 .fernignore
create mode 100644 .github/workflows/ci.yml
create mode 100644 .gitignore
create mode 100644 .npmignore
create mode 100644 .prettierrc.yml
delete mode 100644 LICENSE
create mode 100644 README.md
create mode 100644 jest.config.js
create mode 100644 package.json
create mode 100644 reference.md
create mode 100644 src/Client.ts
create mode 100644 src/api/errors/InternalServerError.ts
create mode 100644 src/api/errors/PaymentRequiredError.ts
create mode 100644 src/api/errors/TooManyRequestsError.ts
create mode 100644 src/api/errors/UnprocessableEntityError.ts
create mode 100644 src/api/errors/index.ts
create mode 100644 src/api/index.ts
create mode 100644 src/api/resources/aiAnimationGenerator/client/Client.ts
create mode 100644 src/api/resources/aiAnimationGenerator/client/index.ts
create mode 100644 src/api/resources/aiAnimationGenerator/client/requests/StatusDeforumSdRequest.ts
create mode 100644 src/api/resources/aiAnimationGenerator/client/requests/index.ts
create mode 100644 src/api/resources/aiAnimationGenerator/index.ts
create mode 100644 src/api/resources/aiArtQrCode/client/Client.ts
create mode 100644 src/api/resources/aiArtQrCode/client/index.ts
create mode 100644 src/api/resources/aiArtQrCode/client/requests/StatusArtQrCodeRequest.ts
create mode 100644 src/api/resources/aiArtQrCode/client/requests/index.ts
create mode 100644 src/api/resources/aiArtQrCode/index.ts
create mode 100644 src/api/resources/aiBackgroundChanger/client/Client.ts
create mode 100644 src/api/resources/aiBackgroundChanger/client/index.ts
create mode 100644 src/api/resources/aiBackgroundChanger/client/requests/StatusImageSegmentationRequest.ts
create mode 100644 src/api/resources/aiBackgroundChanger/client/requests/index.ts
create mode 100644 src/api/resources/aiBackgroundChanger/index.ts
create mode 100644 src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/Client.ts
create mode 100644 src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/index.ts
create mode 100644 src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/StatusEmailFaceInpaintingRequest.ts
create mode 100644 src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/index.ts
create mode 100644 src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/index.ts
create mode 100644 src/api/resources/aiImageWithAFace/client/Client.ts
create mode 100644 src/api/resources/aiImageWithAFace/client/index.ts
create mode 100644 src/api/resources/aiImageWithAFace/client/requests/StatusFaceInpaintingRequest.ts
create mode 100644 src/api/resources/aiImageWithAFace/client/requests/index.ts
create mode 100644 src/api/resources/aiImageWithAFace/index.ts
create mode 100644 src/api/resources/bulkRunner/client/Client.ts
create mode 100644 src/api/resources/bulkRunner/client/index.ts
create mode 100644 src/api/resources/bulkRunner/client/requests/StatusBulkRunnerRequest.ts
create mode 100644 src/api/resources/bulkRunner/client/requests/index.ts
create mode 100644 src/api/resources/bulkRunner/index.ts
create mode 100644 src/api/resources/chyronPlantBot/client/Client.ts
create mode 100644 src/api/resources/chyronPlantBot/client/index.ts
create mode 100644 src/api/resources/chyronPlantBot/client/requests/StatusChyronPlantRequest.ts
create mode 100644 src/api/resources/chyronPlantBot/client/requests/index.ts
create mode 100644 src/api/resources/chyronPlantBot/index.ts
create mode 100644 src/api/resources/compareAiImageGenerators/client/Client.ts
create mode 100644 src/api/resources/compareAiImageGenerators/client/index.ts
create mode 100644 src/api/resources/compareAiImageGenerators/client/requests/StatusCompareText2ImgRequest.ts
create mode 100644 src/api/resources/compareAiImageGenerators/client/requests/index.ts
create mode 100644 src/api/resources/compareAiImageGenerators/index.ts
create mode 100644 src/api/resources/compareAiImageUpscalers/client/Client.ts
create mode 100644 src/api/resources/compareAiImageUpscalers/client/index.ts
create mode 100644 src/api/resources/compareAiImageUpscalers/client/requests/StatusCompareAiUpscalersRequest.ts
create mode 100644 src/api/resources/compareAiImageUpscalers/client/requests/index.ts
create mode 100644 src/api/resources/compareAiImageUpscalers/index.ts
create mode 100644 src/api/resources/compareAiTranslations/client/Client.ts
create mode 100644 src/api/resources/compareAiTranslations/client/index.ts
create mode 100644 src/api/resources/compareAiTranslations/client/requests/StatusTranslateRequest.ts
create mode 100644 src/api/resources/compareAiTranslations/client/requests/index.ts
create mode 100644 src/api/resources/compareAiTranslations/index.ts
create mode 100644 src/api/resources/compareAiVoiceGenerators/client/Client.ts
create mode 100644 src/api/resources/compareAiVoiceGenerators/client/index.ts
create mode 100644 src/api/resources/compareAiVoiceGenerators/client/requests/StatusTextToSpeechRequest.ts
create mode 100644 src/api/resources/compareAiVoiceGenerators/client/requests/index.ts
create mode 100644 src/api/resources/compareAiVoiceGenerators/index.ts
create mode 100644 src/api/resources/copilotForYourEnterprise/client/Client.ts
create mode 100644 src/api/resources/copilotForYourEnterprise/client/index.ts
create mode 100644 src/api/resources/copilotForYourEnterprise/client/requests/StatusVideoBotsRequest.ts
create mode 100644 src/api/resources/copilotForYourEnterprise/client/requests/index.ts
create mode 100644 src/api/resources/copilotForYourEnterprise/index.ts
create mode 100644 src/api/resources/copilotIntegrations/client/Client.ts
create mode 100644 src/api/resources/copilotIntegrations/client/index.ts
create mode 100644 src/api/resources/copilotIntegrations/client/requests/CreateStreamRequest.ts
create mode 100644 src/api/resources/copilotIntegrations/client/requests/index.ts
create mode 100644 src/api/resources/copilotIntegrations/index.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestAsrModel.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestCitationStyle.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestEmbeddingModel.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestLipsyncModel.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiTtsModel.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiVoiceName.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestSelectedModel.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestTranslationModel.ts
create mode 100644 src/api/resources/copilotIntegrations/types/CreateStreamRequestTtsProvider.ts
create mode 100644 src/api/resources/copilotIntegrations/types/VideoBotsStreamResponse.ts
create mode 100644 src/api/resources/copilotIntegrations/types/index.ts
create mode 100644 src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/Client.ts
create mode 100644 src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/index.ts
create mode 100644 src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/StatusSeoSummaryRequest.ts
create mode 100644 src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/index.ts
create mode 100644 src/api/resources/createAPerfectSeoOptimizedTitleParagraph/index.ts
create mode 100644 src/api/resources/editAnImageWithAiPrompt/client/Client.ts
create mode 100644 src/api/resources/editAnImageWithAiPrompt/client/index.ts
create mode 100644 src/api/resources/editAnImageWithAiPrompt/client/requests/StatusImg2ImgRequest.ts
create mode 100644 src/api/resources/editAnImageWithAiPrompt/client/requests/index.ts
create mode 100644 src/api/resources/editAnImageWithAiPrompt/index.ts
create mode 100644 src/api/resources/embeddings/client/Client.ts
create mode 100644 src/api/resources/embeddings/client/index.ts
create mode 100644 src/api/resources/embeddings/client/requests/StatusEmbeddingsRequest.ts
create mode 100644 src/api/resources/embeddings/client/requests/index.ts
create mode 100644 src/api/resources/embeddings/index.ts
create mode 100644 src/api/resources/evaluator/client/Client.ts
create mode 100644 src/api/resources/evaluator/client/index.ts
create mode 100644 src/api/resources/evaluator/client/requests/StatusBulkEvalRequest.ts
create mode 100644 src/api/resources/evaluator/client/requests/index.ts
create mode 100644 src/api/resources/evaluator/index.ts
create mode 100644 src/api/resources/functions/client/Client.ts
create mode 100644 src/api/resources/functions/client/index.ts
create mode 100644 src/api/resources/functions/client/requests/StatusFunctionsRequest.ts
create mode 100644 src/api/resources/functions/client/requests/index.ts
create mode 100644 src/api/resources/functions/index.ts
create mode 100644 src/api/resources/generatePeopleAlsoAskSeoContent/client/Client.ts
create mode 100644 src/api/resources/generatePeopleAlsoAskSeoContent/client/index.ts
create mode 100644 src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/StatusRelatedQnaMakerRequest.ts
create mode 100644 src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/index.ts
create mode 100644 src/api/resources/generatePeopleAlsoAskSeoContent/index.ts
create mode 100644 src/api/resources/generateProductPhotoBackgrounds/client/Client.ts
create mode 100644 src/api/resources/generateProductPhotoBackgrounds/client/index.ts
create mode 100644 src/api/resources/generateProductPhotoBackgrounds/client/requests/StatusObjectInpaintingRequest.ts
create mode 100644 src/api/resources/generateProductPhotoBackgrounds/client/requests/index.ts
create mode 100644 src/api/resources/generateProductPhotoBackgrounds/index.ts
create mode 100644 src/api/resources/index.ts
create mode 100644 src/api/resources/largeLanguageModelsGpt3/client/Client.ts
create mode 100644 src/api/resources/largeLanguageModelsGpt3/client/index.ts
create mode 100644 src/api/resources/largeLanguageModelsGpt3/client/requests/StatusCompareLlmRequest.ts
create mode 100644 src/api/resources/largeLanguageModelsGpt3/client/requests/index.ts
create mode 100644 src/api/resources/largeLanguageModelsGpt3/index.ts
create mode 100644 src/api/resources/letterWriter/client/Client.ts
create mode 100644 src/api/resources/letterWriter/client/index.ts
create mode 100644 src/api/resources/letterWriter/client/requests/StatusLetterWriterRequest.ts
create mode 100644 src/api/resources/letterWriter/client/requests/index.ts
create mode 100644 src/api/resources/letterWriter/index.ts
create mode 100644 src/api/resources/lipSyncing/client/Client.ts
create mode 100644 src/api/resources/lipSyncing/client/index.ts
create mode 100644 src/api/resources/lipSyncing/client/requests/StatusLipsyncRequest.ts
create mode 100644 src/api/resources/lipSyncing/client/requests/index.ts
create mode 100644 src/api/resources/lipSyncing/index.ts
create mode 100644 src/api/resources/lipsyncVideoWithAnyText/client/Client.ts
create mode 100644 src/api/resources/lipsyncVideoWithAnyText/client/index.ts
create mode 100644 src/api/resources/lipsyncVideoWithAnyText/client/requests/StatusLipsyncTtsRequest.ts
create mode 100644 src/api/resources/lipsyncVideoWithAnyText/client/requests/index.ts
create mode 100644 src/api/resources/lipsyncVideoWithAnyText/index.ts
create mode 100644 src/api/resources/misc/client/Client.ts
create mode 100644 src/api/resources/misc/client/index.ts
create mode 100644 src/api/resources/misc/client/requests/BotBroadcastRequestModel.ts
create mode 100644 src/api/resources/misc/client/requests/index.ts
create mode 100644 src/api/resources/misc/index.ts
create mode 100644 src/api/resources/peopleAlsoAskAnswersFromADoc/client/Client.ts
create mode 100644 src/api/resources/peopleAlsoAskAnswersFromADoc/client/index.ts
create mode 100644 src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/StatusRelatedQnaMakerDocRequest.ts
create mode 100644 src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/index.ts
create mode 100644 src/api/resources/peopleAlsoAskAnswersFromADoc/index.ts
create mode 100644 src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/Client.ts
create mode 100644 src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/index.ts
create mode 100644 src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/StatusSocialLookupEmailRequest.ts
create mode 100644 src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/index.ts
create mode 100644 src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/index.ts
create mode 100644 src/api/resources/renderImageSearchResultsWithAi/client/Client.ts
create mode 100644 src/api/resources/renderImageSearchResultsWithAi/client/index.ts
create mode 100644 src/api/resources/renderImageSearchResultsWithAi/client/requests/StatusGoogleImageGenRequest.ts
create mode 100644 src/api/resources/renderImageSearchResultsWithAi/client/requests/index.ts
create mode 100644 src/api/resources/renderImageSearchResultsWithAi/index.ts
create mode 100644 src/api/resources/searchYourDocsWithGpt/client/Client.ts
create mode 100644 src/api/resources/searchYourDocsWithGpt/client/index.ts
create mode 100644 src/api/resources/searchYourDocsWithGpt/client/requests/StatusDocSearchRequest.ts
create mode 100644 src/api/resources/searchYourDocsWithGpt/client/requests/index.ts
create mode 100644 src/api/resources/searchYourDocsWithGpt/index.ts
create mode 100644 src/api/resources/smartGpt/client/Client.ts
create mode 100644 src/api/resources/smartGpt/client/index.ts
create mode 100644 src/api/resources/smartGpt/client/requests/StatusSmartGptRequest.ts
create mode 100644 src/api/resources/smartGpt/client/requests/index.ts
create mode 100644 src/api/resources/smartGpt/index.ts
create mode 100644 src/api/resources/speechRecognitionTranslation/client/Client.ts
create mode 100644 src/api/resources/speechRecognitionTranslation/client/index.ts
create mode 100644 src/api/resources/speechRecognitionTranslation/client/requests/StatusAsrRequest.ts
create mode 100644 src/api/resources/speechRecognitionTranslation/client/requests/index.ts
create mode 100644 src/api/resources/speechRecognitionTranslation/index.ts
create mode 100644 src/api/resources/summarizeYourDocsWithGpt/client/Client.ts
create mode 100644 src/api/resources/summarizeYourDocsWithGpt/client/index.ts
create mode 100644 src/api/resources/summarizeYourDocsWithGpt/client/requests/StatusDocSummaryRequest.ts
create mode 100644 src/api/resources/summarizeYourDocsWithGpt/client/requests/index.ts
create mode 100644 src/api/resources/summarizeYourDocsWithGpt/index.ts
create mode 100644 src/api/resources/syntheticDataMakerForVideosPdFs/client/Client.ts
create mode 100644 src/api/resources/syntheticDataMakerForVideosPdFs/client/index.ts
create mode 100644 src/api/resources/syntheticDataMakerForVideosPdFs/client/requests/StatusDocExtractRequest.ts
create mode 100644 src/api/resources/syntheticDataMakerForVideosPdFs/client/requests/index.ts
create mode 100644 src/api/resources/syntheticDataMakerForVideosPdFs/index.ts
create mode 100644 src/api/resources/textGuidedAudioGenerator/client/Client.ts
create mode 100644 src/api/resources/textGuidedAudioGenerator/client/index.ts
create mode 100644 src/api/resources/textGuidedAudioGenerator/client/requests/StatusText2AudioRequest.ts
create mode 100644 src/api/resources/textGuidedAudioGenerator/client/requests/index.ts
create mode 100644 src/api/resources/textGuidedAudioGenerator/index.ts
create mode 100644 src/api/resources/webSearchGpt3/client/Client.ts
create mode 100644 src/api/resources/webSearchGpt3/client/index.ts
create mode 100644 src/api/resources/webSearchGpt3/client/requests/StatusGoogleGptRequest.ts
create mode 100644 src/api/resources/webSearchGpt3/client/requests/index.ts
create mode 100644 src/api/resources/webSearchGpt3/index.ts
create mode 100644 src/api/types/AggFunction.ts
create mode 100644 src/api/types/AggFunctionResult.ts
create mode 100644 src/api/types/AnimationPrompt.ts
create mode 100644 src/api/types/AsrChunk.ts
create mode 100644 src/api/types/AsrOutputJson.ts
create mode 100644 src/api/types/AsrPageOutput.ts
create mode 100644 src/api/types/AsrPageOutputOutputTextItem.ts
create mode 100644 src/api/types/AsrPageRequest.ts
create mode 100644 src/api/types/AsrPageRequestOutputFormat.ts
create mode 100644 src/api/types/AsrPageRequestSelectedModel.ts
create mode 100644 src/api/types/AsrPageRequestTranslationModel.ts
create mode 100644 src/api/types/AsrPageResponse.ts
create mode 100644 src/api/types/AsrPageStatusResponse.ts
create mode 100644 src/api/types/AsyncApiResponseModelV3.ts
create mode 100644 src/api/types/BalanceResponse.ts
create mode 100644 src/api/types/BotBroadcastFilters.ts
create mode 100644 src/api/types/BulkEvalPageOutput.ts
create mode 100644 src/api/types/BulkEvalPageRequest.ts
create mode 100644 src/api/types/BulkEvalPageRequestSelectedModel.ts
create mode 100644 src/api/types/BulkEvalPageResponse.ts
create mode 100644 src/api/types/BulkEvalPageStatusResponse.ts
create mode 100644 src/api/types/BulkRunnerPageOutput.ts
create mode 100644 src/api/types/BulkRunnerPageRequest.ts
create mode 100644 src/api/types/BulkRunnerPageResponse.ts
create mode 100644 src/api/types/BulkRunnerPageStatusResponse.ts
create mode 100644 src/api/types/ButtonPressed.ts
create mode 100644 src/api/types/CalledFunctionResponse.ts
create mode 100644 src/api/types/ChatCompletionContentPartImageParam.ts
create mode 100644 src/api/types/ChatCompletionContentPartTextParam.ts
create mode 100644 src/api/types/ChyronPlantPageOutput.ts
create mode 100644 src/api/types/ChyronPlantPageRequest.ts
create mode 100644 src/api/types/ChyronPlantPageResponse.ts
create mode 100644 src/api/types/ChyronPlantPageStatusResponse.ts
create mode 100644 src/api/types/CompareLlmPageOutput.ts
create mode 100644 src/api/types/CompareLlmPageRequest.ts
create mode 100644 src/api/types/CompareLlmPageRequestResponseFormatType.ts
create mode 100644 src/api/types/CompareLlmPageRequestSelectedModelsItem.ts
create mode 100644 src/api/types/CompareLlmPageResponse.ts
create mode 100644 src/api/types/CompareLlmPageStatusResponse.ts
create mode 100644 src/api/types/CompareText2ImgPageOutput.ts
create mode 100644 src/api/types/CompareText2ImgPageRequest.ts
create mode 100644 src/api/types/CompareText2ImgPageRequestSelectedModelsItem.ts
create mode 100644 src/api/types/CompareText2ImgPageResponse.ts
create mode 100644 src/api/types/CompareText2ImgPageStatusResponse.ts
create mode 100644 src/api/types/CompareUpscalerPageOutput.ts
create mode 100644 src/api/types/CompareUpscalerPageRequest.ts
create mode 100644 src/api/types/CompareUpscalerPageRequestSelectedModelsItem.ts
create mode 100644 src/api/types/CompareUpscalerPageResponse.ts
create mode 100644 src/api/types/CompareUpscalerPageStatusResponse.ts
create mode 100644 src/api/types/ConsoleLogs.ts
create mode 100644 src/api/types/Content.ts
create mode 100644 src/api/types/ConversationEntry.ts
create mode 100644 src/api/types/ConversationEntryContentItem.ts
create mode 100644 src/api/types/ConversationStart.ts
create mode 100644 src/api/types/CreateStreamResponse.ts
create mode 100644 src/api/types/DeforumSdPageOutput.ts
create mode 100644 src/api/types/DeforumSdPageRequest.ts
create mode 100644 src/api/types/DeforumSdPageRequestSelectedModel.ts
create mode 100644 src/api/types/DeforumSdPageResponse.ts
create mode 100644 src/api/types/DeforumSdPageStatusResponse.ts
create mode 100644 src/api/types/Detail.ts
create mode 100644 src/api/types/DocExtractPageOutput.ts
create mode 100644 src/api/types/DocExtractPageRequest.ts
create mode 100644 src/api/types/DocExtractPageRequestSelectedAsrModel.ts
create mode 100644 src/api/types/DocExtractPageRequestSelectedModel.ts
create mode 100644 src/api/types/DocExtractPageResponse.ts
create mode 100644 src/api/types/DocExtractPageStatusResponse.ts
create mode 100644 src/api/types/DocSearchPageOutput.ts
create mode 100644 src/api/types/DocSearchPageRequest.ts
create mode 100644 src/api/types/DocSearchPageRequestCitationStyle.ts
create mode 100644 src/api/types/DocSearchPageRequestEmbeddingModel.ts
create mode 100644 src/api/types/DocSearchPageRequestKeywordQuery.ts
create mode 100644 src/api/types/DocSearchPageRequestSelectedModel.ts
create mode 100644 src/api/types/DocSearchPageResponse.ts
create mode 100644 src/api/types/DocSearchPageStatusResponse.ts
create mode 100644 src/api/types/DocSummaryPageOutput.ts
create mode 100644 src/api/types/DocSummaryPageRequest.ts
create mode 100644 src/api/types/DocSummaryPageRequestSelectedAsrModel.ts
create mode 100644 src/api/types/DocSummaryPageRequestSelectedModel.ts
create mode 100644 src/api/types/DocSummaryPageResponse.ts
create mode 100644 src/api/types/DocSummaryPageStatusResponse.ts
create mode 100644 src/api/types/EmailFaceInpaintingPageOutput.ts
create mode 100644 src/api/types/EmailFaceInpaintingPageRequest.ts
create mode 100644 src/api/types/EmailFaceInpaintingPageRequestSelectedModel.ts
create mode 100644 src/api/types/EmailFaceInpaintingPageResponse.ts
create mode 100644 src/api/types/EmailFaceInpaintingPageStatusResponse.ts
create mode 100644 src/api/types/EmbeddingsPageOutput.ts
create mode 100644 src/api/types/EmbeddingsPageRequest.ts
create mode 100644 src/api/types/EmbeddingsPageRequestSelectedModel.ts
create mode 100644 src/api/types/EmbeddingsPageResponse.ts
create mode 100644 src/api/types/EmbeddingsPageStatusResponse.ts
create mode 100644 src/api/types/EvalPrompt.ts
create mode 100644 src/api/types/FaceInpaintingPageOutput.ts
create mode 100644 src/api/types/FaceInpaintingPageRequest.ts
create mode 100644 src/api/types/FaceInpaintingPageRequestSelectedModel.ts
create mode 100644 src/api/types/FaceInpaintingPageResponse.ts
create mode 100644 src/api/types/FaceInpaintingPageStatusResponse.ts
create mode 100644 src/api/types/FailedReponseModelV2.ts
create mode 100644 src/api/types/FailedResponseDetail.ts
create mode 100644 src/api/types/FinalResponse.ts
create mode 100644 src/api/types/Function.ts
create mode 100644 src/api/types/FunctionsPageOutput.ts
create mode 100644 src/api/types/FunctionsPageRequest.ts
create mode 100644 src/api/types/FunctionsPageResponse.ts
create mode 100644 src/api/types/FunctionsPageStatusResponse.ts
create mode 100644 src/api/types/GenericErrorResponse.ts
create mode 100644 src/api/types/GenericErrorResponseDetail.ts
create mode 100644 src/api/types/GoogleGptPageOutput.ts
create mode 100644 src/api/types/GoogleGptPageRequest.ts
create mode 100644 src/api/types/GoogleGptPageRequestEmbeddingModel.ts
create mode 100644 src/api/types/GoogleGptPageRequestSelectedModel.ts
create mode 100644 src/api/types/GoogleGptPageResponse.ts
create mode 100644 src/api/types/GoogleGptPageStatusResponse.ts
create mode 100644 src/api/types/GoogleImageGenPageOutput.ts
create mode 100644 src/api/types/GoogleImageGenPageRequest.ts
create mode 100644 src/api/types/GoogleImageGenPageRequestSelectedModel.ts
create mode 100644 src/api/types/GoogleImageGenPageResponse.ts
create mode 100644 src/api/types/GoogleImageGenPageStatusResponse.ts
create mode 100644 src/api/types/HttpValidationError.ts
create mode 100644 src/api/types/ImageSegmentationPageOutput.ts
create mode 100644 src/api/types/ImageSegmentationPageRequest.ts
create mode 100644 src/api/types/ImageSegmentationPageRequestSelectedModel.ts
create mode 100644 src/api/types/ImageSegmentationPageResponse.ts
create mode 100644 src/api/types/ImageSegmentationPageStatusResponse.ts
create mode 100644 src/api/types/ImageUrl.ts
create mode 100644 src/api/types/Img2ImgPageOutput.ts
create mode 100644 src/api/types/Img2ImgPageRequest.ts
create mode 100644 src/api/types/Img2ImgPageRequestSelectedControlnetModel.ts
create mode 100644 src/api/types/Img2ImgPageRequestSelectedControlnetModelItem.ts
create mode 100644 src/api/types/Img2ImgPageRequestSelectedModel.ts
create mode 100644 src/api/types/Img2ImgPageResponse.ts
create mode 100644 src/api/types/Img2ImgPageStatusResponse.ts
create mode 100644 src/api/types/LetterWriterPageOutput.ts
create mode 100644 src/api/types/LetterWriterPageRequest.ts
create mode 100644 src/api/types/LetterWriterPageResponse.ts
create mode 100644 src/api/types/LetterWriterPageStatusResponse.ts
create mode 100644 src/api/types/Level.ts
create mode 100644 src/api/types/LipsyncPageOutput.ts
create mode 100644 src/api/types/LipsyncPageRequest.ts
create mode 100644 src/api/types/LipsyncPageRequestSelectedModel.ts
create mode 100644 src/api/types/LipsyncPageResponse.ts
create mode 100644 src/api/types/LipsyncPageStatusResponse.ts
create mode 100644 src/api/types/LipsyncTtsPageOutput.ts
create mode 100644 src/api/types/LipsyncTtsPageRequest.ts
create mode 100644 src/api/types/LipsyncTtsPageRequestOpenaiTtsModel.ts
create mode 100644 src/api/types/LipsyncTtsPageRequestOpenaiVoiceName.ts
create mode 100644 src/api/types/LipsyncTtsPageRequestSelectedModel.ts
create mode 100644 src/api/types/LipsyncTtsPageRequestTtsProvider.ts
create mode 100644 src/api/types/LipsyncTtsPageResponse.ts
create mode 100644 src/api/types/LipsyncTtsPageStatusResponse.ts
create mode 100644 src/api/types/LlmTools.ts
create mode 100644 src/api/types/MessagePart.ts
create mode 100644 src/api/types/ObjectInpaintingPageOutput.ts
create mode 100644 src/api/types/ObjectInpaintingPageRequest.ts
create mode 100644 src/api/types/ObjectInpaintingPageRequestSelectedModel.ts
create mode 100644 src/api/types/ObjectInpaintingPageResponse.ts
create mode 100644 src/api/types/ObjectInpaintingPageStatusResponse.ts
create mode 100644 src/api/types/Preprocess.ts
create mode 100644 src/api/types/Prompt.ts
create mode 100644 src/api/types/PromptTreeNode.ts
create mode 100644 src/api/types/QrCodeGeneratorPageOutput.ts
create mode 100644 src/api/types/QrCodeGeneratorPageRequest.ts
create mode 100644 src/api/types/QrCodeGeneratorPageRequestImagePromptControlnetModelsItem.ts
create mode 100644 src/api/types/QrCodeGeneratorPageRequestSelectedControlnetModelItem.ts
create mode 100644 src/api/types/QrCodeGeneratorPageRequestSelectedModel.ts
create mode 100644 src/api/types/QrCodeGeneratorPageResponse.ts
create mode 100644 src/api/types/QrCodeGeneratorPageStatusResponse.ts
create mode 100644 src/api/types/RecipeFunction.ts
create mode 100644 src/api/types/RecipeRunState.ts
create mode 100644 src/api/types/RelatedDocSearchResponse.ts
create mode 100644 src/api/types/RelatedGoogleGptResponse.ts
create mode 100644 src/api/types/RelatedQnADocPageOutput.ts
create mode 100644 src/api/types/RelatedQnADocPageRequest.ts
create mode 100644 src/api/types/RelatedQnADocPageRequestCitationStyle.ts
create mode 100644 src/api/types/RelatedQnADocPageRequestEmbeddingModel.ts
create mode 100644 src/api/types/RelatedQnADocPageRequestKeywordQuery.ts
create mode 100644 src/api/types/RelatedQnADocPageRequestSelectedModel.ts
create mode 100644 src/api/types/RelatedQnADocPageResponse.ts
create mode 100644 src/api/types/RelatedQnADocPageStatusResponse.ts
create mode 100644 src/api/types/RelatedQnAPageOutput.ts
create mode 100644 src/api/types/RelatedQnAPageRequest.ts
create mode 100644 src/api/types/RelatedQnAPageRequestEmbeddingModel.ts
create mode 100644 src/api/types/RelatedQnAPageRequestSelectedModel.ts
create mode 100644 src/api/types/RelatedQnAPageResponse.ts
create mode 100644 src/api/types/RelatedQnAPageStatusResponse.ts
create mode 100644 src/api/types/ReplyButton.ts
create mode 100644 src/api/types/ResponseModel.ts
create mode 100644 src/api/types/ResponseModelFinalKeywordQuery.ts
create mode 100644 src/api/types/ResponseModelFinalPrompt.ts
create mode 100644 src/api/types/Role.ts
create mode 100644 src/api/types/RunSettings.ts
create mode 100644 src/api/types/RunSettingsRetentionPolicy.ts
create mode 100644 src/api/types/RunStart.ts
create mode 100644 src/api/types/SadTalkerSettings.ts
create mode 100644 src/api/types/Scheduler.ts
create mode 100644 src/api/types/SearchReference.ts
create mode 100644 src/api/types/SeoSummaryPageOutput.ts
create mode 100644 src/api/types/SeoSummaryPageRequest.ts
create mode 100644 src/api/types/SeoSummaryPageRequestSelectedModel.ts
create mode 100644 src/api/types/SeoSummaryPageResponse.ts
create mode 100644 src/api/types/SeoSummaryPageStatusResponse.ts
create mode 100644 src/api/types/SerpSearchLocation.ts
create mode 100644 src/api/types/SerpSearchType.ts
create mode 100644 src/api/types/SmartGptPageOutput.ts
create mode 100644 src/api/types/SmartGptPageRequest.ts
create mode 100644 src/api/types/SmartGptPageRequestSelectedModel.ts
create mode 100644 src/api/types/SmartGptPageResponse.ts
create mode 100644 src/api/types/SmartGptPageStatusResponse.ts
create mode 100644 src/api/types/SocialLookupEmailPageOutput.ts
create mode 100644 src/api/types/SocialLookupEmailPageRequest.ts
create mode 100644 src/api/types/SocialLookupEmailPageRequestSelectedModel.ts
create mode 100644 src/api/types/SocialLookupEmailPageResponse.ts
create mode 100644 src/api/types/SocialLookupEmailPageStatusResponse.ts
create mode 100644 src/api/types/StreamError.ts
create mode 100644 src/api/types/Text2AudioPageOutput.ts
create mode 100644 src/api/types/Text2AudioPageRequest.ts
create mode 100644 src/api/types/Text2AudioPageResponse.ts
create mode 100644 src/api/types/Text2AudioPageStatusResponse.ts
create mode 100644 src/api/types/TextToSpeechPageOutput.ts
create mode 100644 src/api/types/TextToSpeechPageRequest.ts
create mode 100644 src/api/types/TextToSpeechPageRequestOpenaiTtsModel.ts
create mode 100644 src/api/types/TextToSpeechPageRequestOpenaiVoiceName.ts
create mode 100644 src/api/types/TextToSpeechPageRequestTtsProvider.ts
create mode 100644 src/api/types/TextToSpeechPageResponse.ts
create mode 100644 src/api/types/TextToSpeechPageStatusResponse.ts
create mode 100644 src/api/types/TrainingDataModel.ts
create mode 100644 src/api/types/TranslationPageOutput.ts
create mode 100644 src/api/types/TranslationPageRequest.ts
create mode 100644 src/api/types/TranslationPageRequestSelectedModel.ts
create mode 100644 src/api/types/TranslationPageResponse.ts
create mode 100644 src/api/types/TranslationPageStatusResponse.ts
create mode 100644 src/api/types/Trigger.ts
create mode 100644 src/api/types/ValidationError.ts
create mode 100644 src/api/types/ValidationErrorLocItem.ts
create mode 100644 src/api/types/Vcard.ts
create mode 100644 src/api/types/VideoBotsPageOutput.ts
create mode 100644 src/api/types/VideoBotsPageOutputFinalKeywordQuery.ts
create mode 100644 src/api/types/VideoBotsPageOutputFinalPrompt.ts
create mode 100644 src/api/types/VideoBotsPageRequest.ts
create mode 100644 src/api/types/VideoBotsPageRequestAsrModel.ts
create mode 100644 src/api/types/VideoBotsPageRequestCitationStyle.ts
create mode 100644 src/api/types/VideoBotsPageRequestEmbeddingModel.ts
create mode 100644 src/api/types/VideoBotsPageRequestLipsyncModel.ts
create mode 100644 src/api/types/VideoBotsPageRequestOpenaiTtsModel.ts
create mode 100644 src/api/types/VideoBotsPageRequestOpenaiVoiceName.ts
create mode 100644 src/api/types/VideoBotsPageRequestSelectedModel.ts
create mode 100644 src/api/types/VideoBotsPageRequestTranslationModel.ts
create mode 100644 src/api/types/VideoBotsPageRequestTtsProvider.ts
create mode 100644 src/api/types/VideoBotsPageResponse.ts
create mode 100644 src/api/types/VideoBotsPageStatusResponse.ts
create mode 100644 src/api/types/index.ts
create mode 100644 src/core/auth/BasicAuth.ts
create mode 100644 src/core/auth/BearerToken.ts
create mode 100644 src/core/auth/index.ts
create mode 100644 src/core/fetcher/APIResponse.ts
create mode 100644 src/core/fetcher/Fetcher.ts
create mode 100644 src/core/fetcher/Supplier.ts
create mode 100644 src/core/fetcher/createRequestUrl.ts
create mode 100644 src/core/fetcher/getFetchFn.ts
create mode 100644 src/core/fetcher/getHeader.ts
create mode 100644 src/core/fetcher/getRequestBody.ts
create mode 100644 src/core/fetcher/getResponseBody.ts
create mode 100644 src/core/fetcher/index.ts
create mode 100644 src/core/fetcher/makeRequest.ts
create mode 100644 src/core/fetcher/requestWithRetries.ts
create mode 100644 src/core/fetcher/signals.ts
create mode 100644 src/core/index.ts
create mode 100644 src/core/runtime/index.ts
create mode 100644 src/core/runtime/runtime.ts
create mode 100644 src/core/schemas/Schema.ts
create mode 100644 src/core/schemas/builders/date/date.ts
create mode 100644 src/core/schemas/builders/date/index.ts
create mode 100644 src/core/schemas/builders/enum/enum.ts
create mode 100644 src/core/schemas/builders/enum/index.ts
create mode 100644 src/core/schemas/builders/index.ts
create mode 100644 src/core/schemas/builders/lazy/index.ts
create mode 100644 src/core/schemas/builders/lazy/lazy.ts
create mode 100644 src/core/schemas/builders/lazy/lazyObject.ts
create mode 100644 src/core/schemas/builders/list/index.ts
create mode 100644 src/core/schemas/builders/list/list.ts
create mode 100644 src/core/schemas/builders/literals/booleanLiteral.ts
create mode 100644 src/core/schemas/builders/literals/index.ts
create mode 100644 src/core/schemas/builders/literals/stringLiteral.ts
create mode 100644 src/core/schemas/builders/object-like/getObjectLikeUtils.ts
create mode 100644 src/core/schemas/builders/object-like/index.ts
create mode 100644 src/core/schemas/builders/object-like/types.ts
create mode 100644 src/core/schemas/builders/object/index.ts
create mode 100644 src/core/schemas/builders/object/object.ts
create mode 100644 src/core/schemas/builders/object/objectWithoutOptionalProperties.ts
create mode 100644 src/core/schemas/builders/object/property.ts
create mode 100644 src/core/schemas/builders/object/types.ts
create mode 100644 src/core/schemas/builders/primitives/any.ts
create mode 100644 src/core/schemas/builders/primitives/boolean.ts
create mode 100644 src/core/schemas/builders/primitives/index.ts
create mode 100644 src/core/schemas/builders/primitives/number.ts
create mode 100644 src/core/schemas/builders/primitives/string.ts
create mode 100644 src/core/schemas/builders/primitives/unknown.ts
create mode 100644 src/core/schemas/builders/record/index.ts
create mode 100644 src/core/schemas/builders/record/record.ts
create mode 100644 src/core/schemas/builders/record/types.ts
create mode 100644 src/core/schemas/builders/schema-utils/JsonError.ts
create mode 100644 src/core/schemas/builders/schema-utils/ParseError.ts
create mode 100644 src/core/schemas/builders/schema-utils/getSchemaUtils.ts
create mode 100644 src/core/schemas/builders/schema-utils/index.ts
create mode 100644 src/core/schemas/builders/schema-utils/stringifyValidationErrors.ts
create mode 100644 src/core/schemas/builders/set/index.ts
create mode 100644 src/core/schemas/builders/set/set.ts
create mode 100644 src/core/schemas/builders/undiscriminated-union/index.ts
create mode 100644 src/core/schemas/builders/undiscriminated-union/types.ts
create mode 100644 src/core/schemas/builders/undiscriminated-union/undiscriminatedUnion.ts
create mode 100644 src/core/schemas/builders/union/discriminant.ts
create mode 100644 src/core/schemas/builders/union/index.ts
create mode 100644 src/core/schemas/builders/union/types.ts
create mode 100644 src/core/schemas/builders/union/union.ts
create mode 100644 src/core/schemas/index.ts
create mode 100644 src/core/schemas/utils/MaybePromise.ts
create mode 100644 src/core/schemas/utils/addQuestionMarksToNullableProperties.ts
create mode 100644 src/core/schemas/utils/createIdentitySchemaCreator.ts
create mode 100644 src/core/schemas/utils/entries.ts
create mode 100644 src/core/schemas/utils/filterObject.ts
create mode 100644 src/core/schemas/utils/getErrorMessageForIncorrectType.ts
create mode 100644 src/core/schemas/utils/isPlainObject.ts
create mode 100644 src/core/schemas/utils/keys.ts
create mode 100644 src/core/schemas/utils/maybeSkipValidation.ts
create mode 100644 src/core/schemas/utils/partition.ts
create mode 100644 src/errors/GooeyError.ts
create mode 100644 src/errors/GooeyTimeoutError.ts
create mode 100644 src/errors/index.ts
create mode 100644 src/index.ts
create mode 100644 src/serialization/index.ts
create mode 100644 src/serialization/resources/copilotIntegrations/client/index.ts
create mode 100644 src/serialization/resources/copilotIntegrations/client/requests/CreateStreamRequest.ts
create mode 100644 src/serialization/resources/copilotIntegrations/client/requests/index.ts
create mode 100644 src/serialization/resources/copilotIntegrations/index.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestAsrModel.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestCitationStyle.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestEmbeddingModel.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestLipsyncModel.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestOpenaiTtsModel.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestOpenaiVoiceName.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestSelectedModel.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestTranslationModel.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/CreateStreamRequestTtsProvider.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/VideoBotsStreamResponse.ts
create mode 100644 src/serialization/resources/copilotIntegrations/types/index.ts
create mode 100644 src/serialization/resources/index.ts
create mode 100644 src/serialization/resources/misc/client/index.ts
create mode 100644 src/serialization/resources/misc/client/requests/BotBroadcastRequestModel.ts
create mode 100644 src/serialization/resources/misc/client/requests/index.ts
create mode 100644 src/serialization/resources/misc/index.ts
create mode 100644 src/serialization/types/AggFunction.ts
create mode 100644 src/serialization/types/AggFunctionResult.ts
create mode 100644 src/serialization/types/AnimationPrompt.ts
create mode 100644 src/serialization/types/AsrChunk.ts
create mode 100644 src/serialization/types/AsrOutputJson.ts
create mode 100644 src/serialization/types/AsrPageOutput.ts
create mode 100644 src/serialization/types/AsrPageOutputOutputTextItem.ts
create mode 100644 src/serialization/types/AsrPageRequest.ts
create mode 100644 src/serialization/types/AsrPageRequestOutputFormat.ts
create mode 100644 src/serialization/types/AsrPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/AsrPageRequestTranslationModel.ts
create mode 100644 src/serialization/types/AsrPageResponse.ts
create mode 100644 src/serialization/types/AsrPageStatusResponse.ts
create mode 100644 src/serialization/types/AsyncApiResponseModelV3.ts
create mode 100644 src/serialization/types/BalanceResponse.ts
create mode 100644 src/serialization/types/BotBroadcastFilters.ts
create mode 100644 src/serialization/types/BulkEvalPageOutput.ts
create mode 100644 src/serialization/types/BulkEvalPageRequest.ts
create mode 100644 src/serialization/types/BulkEvalPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/BulkEvalPageResponse.ts
create mode 100644 src/serialization/types/BulkEvalPageStatusResponse.ts
create mode 100644 src/serialization/types/BulkRunnerPageOutput.ts
create mode 100644 src/serialization/types/BulkRunnerPageRequest.ts
create mode 100644 src/serialization/types/BulkRunnerPageResponse.ts
create mode 100644 src/serialization/types/BulkRunnerPageStatusResponse.ts
create mode 100644 src/serialization/types/ButtonPressed.ts
create mode 100644 src/serialization/types/CalledFunctionResponse.ts
create mode 100644 src/serialization/types/ChatCompletionContentPartImageParam.ts
create mode 100644 src/serialization/types/ChatCompletionContentPartTextParam.ts
create mode 100644 src/serialization/types/ChyronPlantPageOutput.ts
create mode 100644 src/serialization/types/ChyronPlantPageRequest.ts
create mode 100644 src/serialization/types/ChyronPlantPageResponse.ts
create mode 100644 src/serialization/types/ChyronPlantPageStatusResponse.ts
create mode 100644 src/serialization/types/CompareLlmPageOutput.ts
create mode 100644 src/serialization/types/CompareLlmPageRequest.ts
create mode 100644 src/serialization/types/CompareLlmPageRequestResponseFormatType.ts
create mode 100644 src/serialization/types/CompareLlmPageRequestSelectedModelsItem.ts
create mode 100644 src/serialization/types/CompareLlmPageResponse.ts
create mode 100644 src/serialization/types/CompareLlmPageStatusResponse.ts
create mode 100644 src/serialization/types/CompareText2ImgPageOutput.ts
create mode 100644 src/serialization/types/CompareText2ImgPageRequest.ts
create mode 100644 src/serialization/types/CompareText2ImgPageRequestSelectedModelsItem.ts
create mode 100644 src/serialization/types/CompareText2ImgPageResponse.ts
create mode 100644 src/serialization/types/CompareText2ImgPageStatusResponse.ts
create mode 100644 src/serialization/types/CompareUpscalerPageOutput.ts
create mode 100644 src/serialization/types/CompareUpscalerPageRequest.ts
create mode 100644 src/serialization/types/CompareUpscalerPageRequestSelectedModelsItem.ts
create mode 100644 src/serialization/types/CompareUpscalerPageResponse.ts
create mode 100644 src/serialization/types/CompareUpscalerPageStatusResponse.ts
create mode 100644 src/serialization/types/ConsoleLogs.ts
create mode 100644 src/serialization/types/Content.ts
create mode 100644 src/serialization/types/ConversationEntry.ts
create mode 100644 src/serialization/types/ConversationEntryContentItem.ts
create mode 100644 src/serialization/types/ConversationStart.ts
create mode 100644 src/serialization/types/CreateStreamResponse.ts
create mode 100644 src/serialization/types/DeforumSdPageOutput.ts
create mode 100644 src/serialization/types/DeforumSdPageRequest.ts
create mode 100644 src/serialization/types/DeforumSdPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/DeforumSdPageResponse.ts
create mode 100644 src/serialization/types/DeforumSdPageStatusResponse.ts
create mode 100644 src/serialization/types/Detail.ts
create mode 100644 src/serialization/types/DocExtractPageOutput.ts
create mode 100644 src/serialization/types/DocExtractPageRequest.ts
create mode 100644 src/serialization/types/DocExtractPageRequestSelectedAsrModel.ts
create mode 100644 src/serialization/types/DocExtractPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/DocExtractPageResponse.ts
create mode 100644 src/serialization/types/DocExtractPageStatusResponse.ts
create mode 100644 src/serialization/types/DocSearchPageOutput.ts
create mode 100644 src/serialization/types/DocSearchPageRequest.ts
create mode 100644 src/serialization/types/DocSearchPageRequestCitationStyle.ts
create mode 100644 src/serialization/types/DocSearchPageRequestEmbeddingModel.ts
create mode 100644 src/serialization/types/DocSearchPageRequestKeywordQuery.ts
create mode 100644 src/serialization/types/DocSearchPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/DocSearchPageResponse.ts
create mode 100644 src/serialization/types/DocSearchPageStatusResponse.ts
create mode 100644 src/serialization/types/DocSummaryPageOutput.ts
create mode 100644 src/serialization/types/DocSummaryPageRequest.ts
create mode 100644 src/serialization/types/DocSummaryPageRequestSelectedAsrModel.ts
create mode 100644 src/serialization/types/DocSummaryPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/DocSummaryPageResponse.ts
create mode 100644 src/serialization/types/DocSummaryPageStatusResponse.ts
create mode 100644 src/serialization/types/EmailFaceInpaintingPageOutput.ts
create mode 100644 src/serialization/types/EmailFaceInpaintingPageRequest.ts
create mode 100644 src/serialization/types/EmailFaceInpaintingPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/EmailFaceInpaintingPageResponse.ts
create mode 100644 src/serialization/types/EmailFaceInpaintingPageStatusResponse.ts
create mode 100644 src/serialization/types/EmbeddingsPageOutput.ts
create mode 100644 src/serialization/types/EmbeddingsPageRequest.ts
create mode 100644 src/serialization/types/EmbeddingsPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/EmbeddingsPageResponse.ts
create mode 100644 src/serialization/types/EmbeddingsPageStatusResponse.ts
create mode 100644 src/serialization/types/EvalPrompt.ts
create mode 100644 src/serialization/types/FaceInpaintingPageOutput.ts
create mode 100644 src/serialization/types/FaceInpaintingPageRequest.ts
create mode 100644 src/serialization/types/FaceInpaintingPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/FaceInpaintingPageResponse.ts
create mode 100644 src/serialization/types/FaceInpaintingPageStatusResponse.ts
create mode 100644 src/serialization/types/FailedReponseModelV2.ts
create mode 100644 src/serialization/types/FailedResponseDetail.ts
create mode 100644 src/serialization/types/FinalResponse.ts
create mode 100644 src/serialization/types/Function.ts
create mode 100644 src/serialization/types/FunctionsPageOutput.ts
create mode 100644 src/serialization/types/FunctionsPageRequest.ts
create mode 100644 src/serialization/types/FunctionsPageResponse.ts
create mode 100644 src/serialization/types/FunctionsPageStatusResponse.ts
create mode 100644 src/serialization/types/GenericErrorResponse.ts
create mode 100644 src/serialization/types/GenericErrorResponseDetail.ts
create mode 100644 src/serialization/types/GoogleGptPageOutput.ts
create mode 100644 src/serialization/types/GoogleGptPageRequest.ts
create mode 100644 src/serialization/types/GoogleGptPageRequestEmbeddingModel.ts
create mode 100644 src/serialization/types/GoogleGptPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/GoogleGptPageResponse.ts
create mode 100644 src/serialization/types/GoogleGptPageStatusResponse.ts
create mode 100644 src/serialization/types/GoogleImageGenPageOutput.ts
create mode 100644 src/serialization/types/GoogleImageGenPageRequest.ts
create mode 100644 src/serialization/types/GoogleImageGenPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/GoogleImageGenPageResponse.ts
create mode 100644 src/serialization/types/GoogleImageGenPageStatusResponse.ts
create mode 100644 src/serialization/types/HttpValidationError.ts
create mode 100644 src/serialization/types/ImageSegmentationPageOutput.ts
create mode 100644 src/serialization/types/ImageSegmentationPageRequest.ts
create mode 100644 src/serialization/types/ImageSegmentationPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/ImageSegmentationPageResponse.ts
create mode 100644 src/serialization/types/ImageSegmentationPageStatusResponse.ts
create mode 100644 src/serialization/types/ImageUrl.ts
create mode 100644 src/serialization/types/Img2ImgPageOutput.ts
create mode 100644 src/serialization/types/Img2ImgPageRequest.ts
create mode 100644 src/serialization/types/Img2ImgPageRequestSelectedControlnetModel.ts
create mode 100644 src/serialization/types/Img2ImgPageRequestSelectedControlnetModelItem.ts
create mode 100644 src/serialization/types/Img2ImgPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/Img2ImgPageResponse.ts
create mode 100644 src/serialization/types/Img2ImgPageStatusResponse.ts
create mode 100644 src/serialization/types/LetterWriterPageOutput.ts
create mode 100644 src/serialization/types/LetterWriterPageRequest.ts
create mode 100644 src/serialization/types/LetterWriterPageResponse.ts
create mode 100644 src/serialization/types/LetterWriterPageStatusResponse.ts
create mode 100644 src/serialization/types/Level.ts
create mode 100644 src/serialization/types/LipsyncPageOutput.ts
create mode 100644 src/serialization/types/LipsyncPageRequest.ts
create mode 100644 src/serialization/types/LipsyncPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/LipsyncPageResponse.ts
create mode 100644 src/serialization/types/LipsyncPageStatusResponse.ts
create mode 100644 src/serialization/types/LipsyncTtsPageOutput.ts
create mode 100644 src/serialization/types/LipsyncTtsPageRequest.ts
create mode 100644 src/serialization/types/LipsyncTtsPageRequestOpenaiTtsModel.ts
create mode 100644 src/serialization/types/LipsyncTtsPageRequestOpenaiVoiceName.ts
create mode 100644 src/serialization/types/LipsyncTtsPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/LipsyncTtsPageRequestTtsProvider.ts
create mode 100644 src/serialization/types/LipsyncTtsPageResponse.ts
create mode 100644 src/serialization/types/LipsyncTtsPageStatusResponse.ts
create mode 100644 src/serialization/types/LlmTools.ts
create mode 100644 src/serialization/types/MessagePart.ts
create mode 100644 src/serialization/types/ObjectInpaintingPageOutput.ts
create mode 100644 src/serialization/types/ObjectInpaintingPageRequest.ts
create mode 100644 src/serialization/types/ObjectInpaintingPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/ObjectInpaintingPageResponse.ts
create mode 100644 src/serialization/types/ObjectInpaintingPageStatusResponse.ts
create mode 100644 src/serialization/types/Preprocess.ts
create mode 100644 src/serialization/types/Prompt.ts
create mode 100644 src/serialization/types/PromptTreeNode.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageOutput.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageRequest.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageRequestImagePromptControlnetModelsItem.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageRequestSelectedControlnetModelItem.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageResponse.ts
create mode 100644 src/serialization/types/QrCodeGeneratorPageStatusResponse.ts
create mode 100644 src/serialization/types/RecipeFunction.ts
create mode 100644 src/serialization/types/RecipeRunState.ts
create mode 100644 src/serialization/types/RelatedDocSearchResponse.ts
create mode 100644 src/serialization/types/RelatedGoogleGptResponse.ts
create mode 100644 src/serialization/types/RelatedQnADocPageOutput.ts
create mode 100644 src/serialization/types/RelatedQnADocPageRequest.ts
create mode 100644 src/serialization/types/RelatedQnADocPageRequestCitationStyle.ts
create mode 100644 src/serialization/types/RelatedQnADocPageRequestEmbeddingModel.ts
create mode 100644 src/serialization/types/RelatedQnADocPageRequestKeywordQuery.ts
create mode 100644 src/serialization/types/RelatedQnADocPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/RelatedQnADocPageResponse.ts
create mode 100644 src/serialization/types/RelatedQnADocPageStatusResponse.ts
create mode 100644 src/serialization/types/RelatedQnAPageOutput.ts
create mode 100644 src/serialization/types/RelatedQnAPageRequest.ts
create mode 100644 src/serialization/types/RelatedQnAPageRequestEmbeddingModel.ts
create mode 100644 src/serialization/types/RelatedQnAPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/RelatedQnAPageResponse.ts
create mode 100644 src/serialization/types/RelatedQnAPageStatusResponse.ts
create mode 100644 src/serialization/types/ReplyButton.ts
create mode 100644 src/serialization/types/ResponseModel.ts
create mode 100644 src/serialization/types/ResponseModelFinalKeywordQuery.ts
create mode 100644 src/serialization/types/ResponseModelFinalPrompt.ts
create mode 100644 src/serialization/types/Role.ts
create mode 100644 src/serialization/types/RunSettings.ts
create mode 100644 src/serialization/types/RunSettingsRetentionPolicy.ts
create mode 100644 src/serialization/types/RunStart.ts
create mode 100644 src/serialization/types/SadTalkerSettings.ts
create mode 100644 src/serialization/types/Scheduler.ts
create mode 100644 src/serialization/types/SearchReference.ts
create mode 100644 src/serialization/types/SeoSummaryPageOutput.ts
create mode 100644 src/serialization/types/SeoSummaryPageRequest.ts
create mode 100644 src/serialization/types/SeoSummaryPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/SeoSummaryPageResponse.ts
create mode 100644 src/serialization/types/SeoSummaryPageStatusResponse.ts
create mode 100644 src/serialization/types/SerpSearchLocation.ts
create mode 100644 src/serialization/types/SerpSearchType.ts
create mode 100644 src/serialization/types/SmartGptPageOutput.ts
create mode 100644 src/serialization/types/SmartGptPageRequest.ts
create mode 100644 src/serialization/types/SmartGptPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/SmartGptPageResponse.ts
create mode 100644 src/serialization/types/SmartGptPageStatusResponse.ts
create mode 100644 src/serialization/types/SocialLookupEmailPageOutput.ts
create mode 100644 src/serialization/types/SocialLookupEmailPageRequest.ts
create mode 100644 src/serialization/types/SocialLookupEmailPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/SocialLookupEmailPageResponse.ts
create mode 100644 src/serialization/types/SocialLookupEmailPageStatusResponse.ts
create mode 100644 src/serialization/types/StreamError.ts
create mode 100644 src/serialization/types/Text2AudioPageOutput.ts
create mode 100644 src/serialization/types/Text2AudioPageRequest.ts
create mode 100644 src/serialization/types/Text2AudioPageResponse.ts
create mode 100644 src/serialization/types/Text2AudioPageStatusResponse.ts
create mode 100644 src/serialization/types/TextToSpeechPageOutput.ts
create mode 100644 src/serialization/types/TextToSpeechPageRequest.ts
create mode 100644 src/serialization/types/TextToSpeechPageRequestOpenaiTtsModel.ts
create mode 100644 src/serialization/types/TextToSpeechPageRequestOpenaiVoiceName.ts
create mode 100644 src/serialization/types/TextToSpeechPageRequestTtsProvider.ts
create mode 100644 src/serialization/types/TextToSpeechPageResponse.ts
create mode 100644 src/serialization/types/TextToSpeechPageStatusResponse.ts
create mode 100644 src/serialization/types/TrainingDataModel.ts
create mode 100644 src/serialization/types/TranslationPageOutput.ts
create mode 100644 src/serialization/types/TranslationPageRequest.ts
create mode 100644 src/serialization/types/TranslationPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/TranslationPageResponse.ts
create mode 100644 src/serialization/types/TranslationPageStatusResponse.ts
create mode 100644 src/serialization/types/Trigger.ts
create mode 100644 src/serialization/types/ValidationError.ts
create mode 100644 src/serialization/types/ValidationErrorLocItem.ts
create mode 100644 src/serialization/types/Vcard.ts
create mode 100644 src/serialization/types/VideoBotsPageOutput.ts
create mode 100644 src/serialization/types/VideoBotsPageOutputFinalKeywordQuery.ts
create mode 100644 src/serialization/types/VideoBotsPageOutputFinalPrompt.ts
create mode 100644 src/serialization/types/VideoBotsPageRequest.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestAsrModel.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestCitationStyle.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestEmbeddingModel.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestLipsyncModel.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestOpenaiTtsModel.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestOpenaiVoiceName.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestSelectedModel.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestTranslationModel.ts
create mode 100644 src/serialization/types/VideoBotsPageRequestTtsProvider.ts
create mode 100644 src/serialization/types/VideoBotsPageResponse.ts
create mode 100644 src/serialization/types/VideoBotsPageStatusResponse.ts
create mode 100644 src/serialization/types/index.ts
create mode 100644 tests/custom.test.ts
create mode 100644 tsconfig.json
create mode 100644 yarn.lock
diff --git a/.fernignore b/.fernignore
new file mode 100644
index 0000000..084a8eb
--- /dev/null
+++ b/.fernignore
@@ -0,0 +1 @@
+# Specify files that shouldn't be modified by Fern
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..cf13c1c
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,30 @@
+name: ci
+
+on: [push]
+
+jobs:
+ compile:
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repo
+ uses: actions/checkout@v3
+
+ - name: Set up node
+ uses: actions/setup-node@v3
+
+ - name: Compile
+ run: yarn && yarn build
+
+ test:
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout repo
+ uses: actions/checkout@v3
+
+ - name: Set up node
+ uses: actions/setup-node@v3
+
+ - name: Compile
+ run: yarn && yarn test
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..72271e0
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+node_modules
+.DS_Store
+/dist
\ No newline at end of file
diff --git a/.npmignore b/.npmignore
new file mode 100644
index 0000000..6db0876
--- /dev/null
+++ b/.npmignore
@@ -0,0 +1,9 @@
+node_modules
+src
+tests
+.gitignore
+.github
+.fernignore
+.prettierrc.yml
+tsconfig.json
+yarn.lock
\ No newline at end of file
diff --git a/.prettierrc.yml b/.prettierrc.yml
new file mode 100644
index 0000000..0c06786
--- /dev/null
+++ b/.prettierrc.yml
@@ -0,0 +1,2 @@
+tabWidth: 4
+printWidth: 120
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index 261eeb9..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,201 +0,0 @@
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..902cc5d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,141 @@
+# Gooey TypeScript Library
+
+[![fern shield](https://img.shields.io/badge/%F0%9F%8C%BF-SDK%20generated%20by%20Fern-brightgreen)](https://github.com/fern-api/fern)
+[![npm shield](https://img.shields.io/npm/v/gooey)](https://www.npmjs.com/package/gooey)
+
+The Gooey TypeScript library provides convenient access to the Gooey API from TypeScript.
+
+## Installation
+
+```sh
+npm i -s gooey
+```
+
+## Usage
+
+Instantiate and use the client with the following:
+
+```typescript
+import { GooeyClient } from "gooey";
+
+const client = new GooeyClient({
+ environment: "YOUR_BASE_URL",
+ apiKey: "YOUR_API_KEY",
+ authorization: "YOUR_AUTHORIZATION",
+});
+await client.copilotIntegrations.videoBotsStreamCreate({
+ integrationId: "integration_id",
+});
+```
+
+## Request And Response Types
+
+The SDK exports all request and response types as TypeScript interfaces. Simply import them with the
+following namespace:
+
+```typescript
+import { Gooey } from "gooey";
+
+const request: Gooey.CreateStreamRequest = {
+ ...
+};
+```
+
+## Exception Handling
+
+When the API returns a non-success status code (4xx or 5xx response), a subclass of the following error
+will be thrown.
+
+```typescript
+import { GooeyError } from "gooey";
+
+try {
+ await client.copilotIntegrations.videoBotsStreamCreate(...);
+} catch (err) {
+ if (err instanceof GooeyError) {
+ console.log(err.statusCode);
+ console.log(err.message);
+ console.log(err.body);
+ }
+}
+```
+
+## Advanced
+
+### Retries
+
+The SDK is instrumented with automatic retries with exponential backoff. A request will be retried as long
+as the request is deemed retriable and the number of retry attempts has not grown larger than the configured
+retry limit (default: 2).
+
+A request is deemed retriable when any of the following HTTP status codes is returned:
+
+- [408](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408) (Timeout)
+- [429](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429) (Too Many Requests)
+- [5XX](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500) (Internal Server Errors)
+
+Use the `maxRetries` request option to configure this behavior.
+
+```typescript
+const response = await client.copilotIntegrations.videoBotsStreamCreate(..., {
+ maxRetries: 0 // override maxRetries at the request level
+});
+```
+
+### Timeouts
+
+The SDK defaults to a 60 second timeout. Use the `timeoutInSeconds` option to configure this behavior.
+
+```typescript
+const response = await client.copilotIntegrations.videoBotsStreamCreate(..., {
+ timeoutInSeconds: 30 // override timeout to 30s
+});
+```
+
+### Aborting Requests
+
+The SDK allows users to abort requests at any point by passing in an abort signal.
+
+```typescript
+const controller = new AbortController();
+const response = await client.copilotIntegrations.videoBotsStreamCreate(..., {
+ abortSignal: controller.signal
+});
+controller.abort(); // aborts the request
+```
+
+### Runtime Compatibility
+
+The SDK defaults to `node-fetch` but will use the global fetch client if present. The SDK works in the following
+runtimes:
+
+- Node.js 18+
+- Vercel
+- Cloudflare Workers
+- Deno v1.25+
+- Bun 1.0+
+- React Native
+
+### Customizing Fetch Client
+
+The SDK provides a way for your to customize the underlying HTTP client / Fetch function. If you're running in an
+unsupported environment, this provides a way for you to break glass and ensure the SDK works.
+
+```typescript
+import { GooeyClient } from "gooey";
+
+const client = new GooeyClient({
+ ...
+ fetcher: // provide your implementation here
+});
+```
+
+## Contributing
+
+While we value open-source contributions to this SDK, this library is generated programmatically.
+Additions made directly to this library would have to be moved over to our generation code,
+otherwise they would be overwritten upon the next generated release. Feel free to open a PR as
+a proof of concept, but know that we will not be able to merge it as-is. We suggest opening
+an issue first to discuss with us!
+
+On the other hand, contributions to the README are always very welcome!
diff --git a/jest.config.js b/jest.config.js
new file mode 100644
index 0000000..35d6e65
--- /dev/null
+++ b/jest.config.js
@@ -0,0 +1,5 @@
+/** @type {import('jest').Config} */
+module.exports = {
+ preset: "ts-jest",
+ testEnvironment: "node",
+};
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..65d513d
--- /dev/null
+++ b/package.json
@@ -0,0 +1,39 @@
+{
+ "name": "gooey",
+ "version": "0.0.1",
+ "private": false,
+ "repository": "https://github.com/GooeyAI/typescript-sdk",
+ "main": "./index.js",
+ "types": "./index.d.ts",
+ "scripts": {
+ "format": "prettier . --write --ignore-unknown",
+ "build": "tsc",
+ "prepack": "cp -rv dist/. .",
+ "test": "jest"
+ },
+ "dependencies": {
+ "url-join": "4.0.1",
+ "form-data": "4.0.0",
+ "formdata-node": "^6.0.3",
+ "node-fetch": "2.7.0",
+ "qs": "6.11.2",
+ "js-base64": "3.7.2"
+ },
+ "devDependencies": {
+ "@types/url-join": "4.0.1",
+ "@types/qs": "6.9.8",
+ "@types/node-fetch": "2.6.9",
+ "jest": "29.7.0",
+ "@types/jest": "29.5.5",
+ "ts-jest": "29.1.1",
+ "jest-environment-jsdom": "29.7.0",
+ "@types/node": "17.0.33",
+ "prettier": "2.7.1",
+ "typescript": "4.6.4"
+ },
+ "browser": {
+ "fs": false,
+ "os": false,
+ "path": false
+ }
+}
diff --git a/reference.md b/reference.md
new file mode 100644
index 0000000..5bcd0dc
--- /dev/null
+++ b/reference.md
@@ -0,0 +1,6825 @@
+## CopilotIntegrations
+
+ client.copilotIntegrations.videoBotsStreamCreate({ ...params }) -> Gooey.CreateStreamResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.copilotIntegrations.videoBotsStreamCreate({
+ integrationId: "integration_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CreateStreamRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CopilotIntegrations.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.copilotIntegrations.videoBotsStream(requestId) -> Gooey.VideoBotsStreamResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.copilotIntegrations.videoBotsStream("request_id");
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**requestId: `string`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CopilotIntegrations.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## CopilotForYourEnterprise
+
+ client.copilotForYourEnterprise.videoBots({ ...params }) -> Gooey.VideoBotsPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.copilotForYourEnterprise.videoBots({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.VideoBotsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CopilotForYourEnterprise.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.copilotForYourEnterprise.asyncVideoBots({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.copilotForYourEnterprise.asyncVideoBots({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.VideoBotsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CopilotForYourEnterprise.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.copilotForYourEnterprise.statusVideoBots({ ...params }) -> Gooey.VideoBotsPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.copilotForYourEnterprise.statusVideoBots({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusVideoBotsRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CopilotForYourEnterprise.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## AiAnimationGenerator
+
+ client.aiAnimationGenerator.deforumSd({ ...params }) -> Gooey.DeforumSdPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiAnimationGenerator.deforumSd({
+ animationPrompts: [
+ {
+ frame: "frame",
+ prompt: "prompt",
+ },
+ ],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DeforumSdPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiAnimationGenerator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiAnimationGenerator.asyncDeforumSd({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiAnimationGenerator.asyncDeforumSd({
+ animationPrompts: [
+ {
+ frame: "frame",
+ prompt: "prompt",
+ },
+ ],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DeforumSdPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiAnimationGenerator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiAnimationGenerator.statusDeforumSd({ ...params }) -> Gooey.DeforumSdPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiAnimationGenerator.statusDeforumSd({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusDeforumSdRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiAnimationGenerator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## AiArtQrCode
+
+ client.aiArtQrCode.artQrCode({ ...params }) -> Gooey.QrCodeGeneratorPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiArtQrCode.artQrCode({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.QrCodeGeneratorPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiArtQrCode.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiArtQrCode.asyncArtQrCode({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiArtQrCode.asyncArtQrCode({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.QrCodeGeneratorPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiArtQrCode.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiArtQrCode.statusArtQrCode({ ...params }) -> Gooey.QrCodeGeneratorPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiArtQrCode.statusArtQrCode({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusArtQrCodeRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiArtQrCode.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## GeneratePeopleAlsoAskSeoContent
+
+ client.generatePeopleAlsoAskSeoContent.relatedQnaMaker({ ...params }) -> Gooey.RelatedQnAPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.generatePeopleAlsoAskSeoContent.relatedQnaMaker({
+ searchQuery: "search_query",
+ siteFilter: "site_filter",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.RelatedQnAPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `GeneratePeopleAlsoAskSeoContent.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.generatePeopleAlsoAskSeoContent.asyncRelatedQnaMaker({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.generatePeopleAlsoAskSeoContent.asyncRelatedQnaMaker({
+ searchQuery: "search_query",
+ siteFilter: "site_filter",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.RelatedQnAPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `GeneratePeopleAlsoAskSeoContent.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.generatePeopleAlsoAskSeoContent.statusRelatedQnaMaker({ ...params }) -> Gooey.RelatedQnAPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.generatePeopleAlsoAskSeoContent.statusRelatedQnaMaker({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusRelatedQnaMakerRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `GeneratePeopleAlsoAskSeoContent.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## CreateAPerfectSeoOptimizedTitleParagraph
+
+ client.createAPerfectSeoOptimizedTitleParagraph.seoSummary({ ...params }) -> Gooey.SeoSummaryPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.createAPerfectSeoOptimizedTitleParagraph.seoSummary({
+ searchQuery: "search_query",
+ keywords: "keywords",
+ title: "title",
+ companyUrl: "company_url",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.SeoSummaryPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.createAPerfectSeoOptimizedTitleParagraph.asyncSeoSummary({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.createAPerfectSeoOptimizedTitleParagraph.asyncSeoSummary({
+ searchQuery: "search_query",
+ keywords: "keywords",
+ title: "title",
+ companyUrl: "company_url",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.SeoSummaryPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.createAPerfectSeoOptimizedTitleParagraph.statusSeoSummary({ ...params }) -> Gooey.SeoSummaryPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.createAPerfectSeoOptimizedTitleParagraph.statusSeoSummary({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusSeoSummaryRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## WebSearchGpt3
+
+ client.webSearchGpt3.googleGpt({ ...params }) -> Gooey.GoogleGptPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.webSearchGpt3.googleGpt({
+ searchQuery: "search_query",
+ siteFilter: "site_filter",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.GoogleGptPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `WebSearchGpt3.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.webSearchGpt3.asyncGoogleGpt({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.webSearchGpt3.asyncGoogleGpt({
+ searchQuery: "search_query",
+ siteFilter: "site_filter",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.GoogleGptPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `WebSearchGpt3.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.webSearchGpt3.statusGoogleGpt({ ...params }) -> Gooey.GoogleGptPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.webSearchGpt3.statusGoogleGpt({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusGoogleGptRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `WebSearchGpt3.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## ProfileLookupGpt3ForAiPersonalizedEmails
+
+ client.profileLookupGpt3ForAiPersonalizedEmails.socialLookupEmail({ ...params }) -> Gooey.SocialLookupEmailPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.profileLookupGpt3ForAiPersonalizedEmails.socialLookupEmail({
+ emailAddress: "email_address",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.SocialLookupEmailPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.profileLookupGpt3ForAiPersonalizedEmails.asyncSocialLookupEmail({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.profileLookupGpt3ForAiPersonalizedEmails.asyncSocialLookupEmail({
+ emailAddress: "email_address",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.SocialLookupEmailPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.profileLookupGpt3ForAiPersonalizedEmails.statusSocialLookupEmail({ ...params }) -> Gooey.SocialLookupEmailPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.profileLookupGpt3ForAiPersonalizedEmails.statusSocialLookupEmail({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusSocialLookupEmailRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## BulkRunner
+
+ client.bulkRunner.post({ ...params }) -> Gooey.BulkRunnerPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.bulkRunner.post({
+ documents: ["documents"],
+ runUrls: ["run_urls"],
+ inputColumns: {
+ input_columns: "input_columns",
+ },
+ outputColumns: {
+ output_columns: "output_columns",
+ },
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.BulkRunnerPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `BulkRunner.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.bulkRunner.asyncBulkRunner({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.bulkRunner.asyncBulkRunner({
+ documents: ["documents"],
+ runUrls: ["run_urls"],
+ inputColumns: {
+ input_columns: "input_columns",
+ },
+ outputColumns: {
+ output_columns: "output_columns",
+ },
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.BulkRunnerPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `BulkRunner.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.bulkRunner.statusBulkRunner({ ...params }) -> Gooey.BulkRunnerPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.bulkRunner.statusBulkRunner({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusBulkRunnerRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `BulkRunner.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## Evaluator
+
+ client.evaluator.bulkEval({ ...params }) -> Gooey.BulkEvalPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.evaluator.bulkEval({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.BulkEvalPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Evaluator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.evaluator.asyncBulkEval({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.evaluator.asyncBulkEval({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.BulkEvalPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Evaluator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.evaluator.statusBulkEval({ ...params }) -> Gooey.BulkEvalPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.evaluator.statusBulkEval({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusBulkEvalRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Evaluator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## SyntheticDataMakerForVideosPdFs
+
+ client.syntheticDataMakerForVideosPdFs.docExtract({ ...params }) -> Gooey.DocExtractPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.syntheticDataMakerForVideosPdFs.docExtract({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DocExtractPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SyntheticDataMakerForVideosPdFs.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.syntheticDataMakerForVideosPdFs.asyncDocExtract({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.syntheticDataMakerForVideosPdFs.asyncDocExtract({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DocExtractPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SyntheticDataMakerForVideosPdFs.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.syntheticDataMakerForVideosPdFs.statusDocExtract({ ...params }) -> Gooey.DocExtractPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.syntheticDataMakerForVideosPdFs.statusDocExtract({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusDocExtractRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SyntheticDataMakerForVideosPdFs.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## LargeLanguageModelsGpt3
+
+ client.largeLanguageModelsGpt3.compareLlm({ ...params }) -> Gooey.CompareLlmPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.largeLanguageModelsGpt3.compareLlm({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CompareLlmPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LargeLanguageModelsGpt3.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.largeLanguageModelsGpt3.asyncCompareLlm({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.largeLanguageModelsGpt3.asyncCompareLlm({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CompareLlmPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LargeLanguageModelsGpt3.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.largeLanguageModelsGpt3.statusCompareLlm({ ...params }) -> Gooey.CompareLlmPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.largeLanguageModelsGpt3.statusCompareLlm({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusCompareLlmRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LargeLanguageModelsGpt3.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## SearchYourDocsWithGpt
+
+ client.searchYourDocsWithGpt.docSearch({ ...params }) -> Gooey.DocSearchPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.searchYourDocsWithGpt.docSearch({
+ searchQuery: "search_query",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DocSearchPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SearchYourDocsWithGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.searchYourDocsWithGpt.asyncDocSearch({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.searchYourDocsWithGpt.asyncDocSearch({
+ searchQuery: "search_query",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DocSearchPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SearchYourDocsWithGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.searchYourDocsWithGpt.statusDocSearch({ ...params }) -> Gooey.DocSearchPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.searchYourDocsWithGpt.statusDocSearch({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusDocSearchRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SearchYourDocsWithGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## SmartGpt
+
+ client.smartGpt.post({ ...params }) -> Gooey.SmartGptPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.smartGpt.post({
+ inputPrompt: "input_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.SmartGptPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SmartGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.smartGpt.asyncSmartGpt({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.smartGpt.asyncSmartGpt({
+ inputPrompt: "input_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.SmartGptPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SmartGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.smartGpt.statusSmartGpt({ ...params }) -> Gooey.SmartGptPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.smartGpt.statusSmartGpt({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusSmartGptRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SmartGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## SummarizeYourDocsWithGpt
+
+ client.summarizeYourDocsWithGpt.docSummary({ ...params }) -> Gooey.DocSummaryPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.summarizeYourDocsWithGpt.docSummary({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DocSummaryPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SummarizeYourDocsWithGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.summarizeYourDocsWithGpt.asyncDocSummary({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.summarizeYourDocsWithGpt.asyncDocSummary({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.DocSummaryPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SummarizeYourDocsWithGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.summarizeYourDocsWithGpt.statusDocSummary({ ...params }) -> Gooey.DocSummaryPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.summarizeYourDocsWithGpt.statusDocSummary({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusDocSummaryRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SummarizeYourDocsWithGpt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## Functions
+
+ client.functions.post({ ...params }) -> Gooey.FunctionsPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.functions.post({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.FunctionsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Functions.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.functions.asyncFunctions({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.functions.asyncFunctions({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.FunctionsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Functions.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.functions.statusFunctions({ ...params }) -> Gooey.FunctionsPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.functions.statusFunctions({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusFunctionsRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Functions.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## LipSyncing
+
+ client.lipSyncing.lipsync({ ...params }) -> Gooey.LipsyncPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.lipSyncing.lipsync({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.LipsyncPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LipSyncing.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.lipSyncing.asyncLipsync({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.lipSyncing.asyncLipsync({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.LipsyncPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LipSyncing.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.lipSyncing.statusLipsync({ ...params }) -> Gooey.LipsyncPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.lipSyncing.statusLipsync({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusLipsyncRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LipSyncing.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## LipsyncVideoWithAnyText
+
+ client.lipsyncVideoWithAnyText.lipsyncTts({ ...params }) -> Gooey.LipsyncTtsPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.lipsyncVideoWithAnyText.lipsyncTts({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.LipsyncTtsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LipsyncVideoWithAnyText.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.lipsyncVideoWithAnyText.asyncLipsyncTts({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.lipsyncVideoWithAnyText.asyncLipsyncTts({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.LipsyncTtsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LipsyncVideoWithAnyText.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.lipsyncVideoWithAnyText.statusLipsyncTts({ ...params }) -> Gooey.LipsyncTtsPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.lipsyncVideoWithAnyText.statusLipsyncTts({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusLipsyncTtsRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LipsyncVideoWithAnyText.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## CompareAiVoiceGenerators
+
+ client.compareAiVoiceGenerators.textToSpeech({ ...params }) -> Gooey.TextToSpeechPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiVoiceGenerators.textToSpeech({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.TextToSpeechPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiVoiceGenerators.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiVoiceGenerators.asyncTextToSpeech({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiVoiceGenerators.asyncTextToSpeech({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.TextToSpeechPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiVoiceGenerators.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiVoiceGenerators.statusTextToSpeech({ ...params }) -> Gooey.TextToSpeechPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiVoiceGenerators.statusTextToSpeech({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusTextToSpeechRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiVoiceGenerators.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## SpeechRecognitionTranslation
+
+ client.speechRecognitionTranslation.asr({ ...params }) -> Gooey.AsrPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.speechRecognitionTranslation.asr({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.AsrPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SpeechRecognitionTranslation.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.speechRecognitionTranslation.asyncAsr({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.speechRecognitionTranslation.asyncAsr({
+ documents: ["documents"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.AsrPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SpeechRecognitionTranslation.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.speechRecognitionTranslation.statusAsr({ ...params }) -> Gooey.AsrPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.speechRecognitionTranslation.statusAsr({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusAsrRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `SpeechRecognitionTranslation.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## TextGuidedAudioGenerator
+
+ client.textGuidedAudioGenerator.text2Audio({ ...params }) -> Gooey.Text2AudioPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.textGuidedAudioGenerator.text2Audio({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.Text2AudioPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `TextGuidedAudioGenerator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.textGuidedAudioGenerator.asyncText2Audio({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.textGuidedAudioGenerator.asyncText2Audio({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.Text2AudioPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `TextGuidedAudioGenerator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.textGuidedAudioGenerator.statusText2Audio({ ...params }) -> Gooey.Text2AudioPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.textGuidedAudioGenerator.statusText2Audio({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusText2AudioRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `TextGuidedAudioGenerator.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## CompareAiTranslations
+
+ client.compareAiTranslations.translate({ ...params }) -> Gooey.TranslationPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiTranslations.translate({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.TranslationPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiTranslations.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiTranslations.asyncTranslate({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiTranslations.asyncTranslate({});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.TranslationPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiTranslations.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiTranslations.statusTranslate({ ...params }) -> Gooey.TranslationPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiTranslations.statusTranslate({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusTranslateRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiTranslations.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## EditAnImageWithAiPrompt
+
+ client.editAnImageWithAiPrompt.img2Img({ ...params }) -> Gooey.Img2ImgPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.editAnImageWithAiPrompt.img2Img({
+ inputImage: "input_image",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.Img2ImgPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `EditAnImageWithAiPrompt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.editAnImageWithAiPrompt.asyncImg2Img({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.editAnImageWithAiPrompt.asyncImg2Img({
+ inputImage: "input_image",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.Img2ImgPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `EditAnImageWithAiPrompt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.editAnImageWithAiPrompt.statusImg2Img({ ...params }) -> Gooey.Img2ImgPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.editAnImageWithAiPrompt.statusImg2Img({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusImg2ImgRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `EditAnImageWithAiPrompt.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## CompareAiImageGenerators
+
+ client.compareAiImageGenerators.compareText2Img({ ...params }) -> Gooey.CompareText2ImgPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiImageGenerators.compareText2Img({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CompareText2ImgPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiImageGenerators.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiImageGenerators.asyncCompareText2Img({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiImageGenerators.asyncCompareText2Img({
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CompareText2ImgPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiImageGenerators.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiImageGenerators.statusCompareText2Img({ ...params }) -> Gooey.CompareText2ImgPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiImageGenerators.statusCompareText2Img({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusCompareText2ImgRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiImageGenerators.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## GenerateProductPhotoBackgrounds
+
+ client.generateProductPhotoBackgrounds.objectInpainting({ ...params }) -> Gooey.ObjectInpaintingPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.generateProductPhotoBackgrounds.objectInpainting({
+ inputImage: "input_image",
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.ObjectInpaintingPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `GenerateProductPhotoBackgrounds.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.generateProductPhotoBackgrounds.asyncObjectInpainting({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.generateProductPhotoBackgrounds.asyncObjectInpainting({
+ inputImage: "input_image",
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.ObjectInpaintingPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `GenerateProductPhotoBackgrounds.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.generateProductPhotoBackgrounds.statusObjectInpainting({ ...params }) -> Gooey.ObjectInpaintingPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.generateProductPhotoBackgrounds.statusObjectInpainting({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusObjectInpaintingRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `GenerateProductPhotoBackgrounds.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## AiImageWithAFace
+
+ client.aiImageWithAFace.faceInpainting({ ...params }) -> Gooey.FaceInpaintingPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiImageWithAFace.faceInpainting({
+ inputImage: "input_image",
+ textPrompt: "tony stark from the iron man",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.FaceInpaintingPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiImageWithAFace.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiImageWithAFace.asyncFaceInpainting({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiImageWithAFace.asyncFaceInpainting({
+ inputImage: "input_image",
+ textPrompt: "tony stark from the iron man",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.FaceInpaintingPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiImageWithAFace.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiImageWithAFace.statusFaceInpainting({ ...params }) -> Gooey.FaceInpaintingPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiImageWithAFace.statusFaceInpainting({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusFaceInpaintingRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiImageWithAFace.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## AiGeneratedPhotoFromEmailProfileLookup
+
+ client.aiGeneratedPhotoFromEmailProfileLookup.emailFaceInpainting({ ...params }) -> Gooey.EmailFaceInpaintingPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiGeneratedPhotoFromEmailProfileLookup.emailFaceInpainting({
+ emailAddress: "sean@dara.network",
+ textPrompt: "winter's day in paris",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.EmailFaceInpaintingPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiGeneratedPhotoFromEmailProfileLookup.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiGeneratedPhotoFromEmailProfileLookup.asyncEmailFaceInpainting({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiGeneratedPhotoFromEmailProfileLookup.asyncEmailFaceInpainting({
+ emailAddress: "sean@dara.network",
+ textPrompt: "winter's day in paris",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.EmailFaceInpaintingPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiGeneratedPhotoFromEmailProfileLookup.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiGeneratedPhotoFromEmailProfileLookup.statusEmailFaceInpainting({ ...params }) -> Gooey.EmailFaceInpaintingPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiGeneratedPhotoFromEmailProfileLookup.statusEmailFaceInpainting({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusEmailFaceInpaintingRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiGeneratedPhotoFromEmailProfileLookup.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## RenderImageSearchResultsWithAi
+
+ client.renderImageSearchResultsWithAi.googleImageGen({ ...params }) -> Gooey.GoogleImageGenPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.renderImageSearchResultsWithAi.googleImageGen({
+ searchQuery: "search_query",
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.GoogleImageGenPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `RenderImageSearchResultsWithAi.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.renderImageSearchResultsWithAi.asyncGoogleImageGen({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.renderImageSearchResultsWithAi.asyncGoogleImageGen({
+ searchQuery: "search_query",
+ textPrompt: "text_prompt",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.GoogleImageGenPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `RenderImageSearchResultsWithAi.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.renderImageSearchResultsWithAi.statusGoogleImageGen({ ...params }) -> Gooey.GoogleImageGenPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.renderImageSearchResultsWithAi.statusGoogleImageGen({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusGoogleImageGenRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `RenderImageSearchResultsWithAi.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## AiBackgroundChanger
+
+ client.aiBackgroundChanger.imageSegmentation({ ...params }) -> Gooey.ImageSegmentationPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiBackgroundChanger.imageSegmentation({
+ inputImage: "input_image",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.ImageSegmentationPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiBackgroundChanger.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiBackgroundChanger.asyncImageSegmentation({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiBackgroundChanger.asyncImageSegmentation({
+ inputImage: "input_image",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.ImageSegmentationPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiBackgroundChanger.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.aiBackgroundChanger.statusImageSegmentation({ ...params }) -> Gooey.ImageSegmentationPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.aiBackgroundChanger.statusImageSegmentation({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusImageSegmentationRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `AiBackgroundChanger.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## CompareAiImageUpscalers
+
+ client.compareAiImageUpscalers.compareAiUpscalers({ ...params }) -> Gooey.CompareUpscalerPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiImageUpscalers.compareAiUpscalers({
+ scale: 1,
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CompareUpscalerPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiImageUpscalers.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiImageUpscalers.asyncCompareAiUpscalers({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiImageUpscalers.asyncCompareAiUpscalers({
+ scale: 1,
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.CompareUpscalerPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiImageUpscalers.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.compareAiImageUpscalers.statusCompareAiUpscalers({ ...params }) -> Gooey.CompareUpscalerPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.compareAiImageUpscalers.statusCompareAiUpscalers({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusCompareAiUpscalersRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `CompareAiImageUpscalers.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## ChyronPlantBot
+
+ client.chyronPlantBot.chyronPlant({ ...params }) -> Gooey.ChyronPlantPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.chyronPlantBot.chyronPlant({
+ midiNotes: "C#1 B6 A2 A1 A3 A2",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.ChyronPlantPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `ChyronPlantBot.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.chyronPlantBot.asyncChyronPlant({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.chyronPlantBot.asyncChyronPlant({
+ midiNotes: "C#1 B6 A2 A1 A3 A2",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.ChyronPlantPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `ChyronPlantBot.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.chyronPlantBot.statusChyronPlant({ ...params }) -> Gooey.ChyronPlantPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.chyronPlantBot.statusChyronPlant({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusChyronPlantRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `ChyronPlantBot.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## LetterWriter
+
+ client.letterWriter.letterWriter({ ...params }) -> Gooey.LetterWriterPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.letterWriter.letterWriter({
+ actionId: "action_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.LetterWriterPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LetterWriter.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.letterWriter.asyncLetterWriter({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.letterWriter.asyncLetterWriter({
+ actionId: "action_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.LetterWriterPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LetterWriter.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.letterWriter.statusLetterWriter({ ...params }) -> Gooey.LetterWriterPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.letterWriter.statusLetterWriter({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusLetterWriterRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `LetterWriter.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## Embeddings
+
+ client.embeddings.post({ ...params }) -> Gooey.EmbeddingsPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.embeddings.post({
+ texts: ["texts"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.EmbeddingsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Embeddings.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.embeddings.asyncEmbeddings({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.embeddings.asyncEmbeddings({
+ texts: ["texts"],
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.EmbeddingsPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Embeddings.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.embeddings.statusEmbeddings({ ...params }) -> Gooey.EmbeddingsPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.embeddings.statusEmbeddings({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusEmbeddingsRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Embeddings.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## PeopleAlsoAskAnswersFromADoc
+
+ client.peopleAlsoAskAnswersFromADoc.relatedQnaMakerDoc({ ...params }) -> Gooey.RelatedQnADocPageResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.peopleAlsoAskAnswersFromADoc.relatedQnaMakerDoc({
+ searchQuery: "search_query",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.RelatedQnADocPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `PeopleAlsoAskAnswersFromADoc.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.peopleAlsoAskAnswersFromADoc.asyncRelatedQnaMakerDoc({ ...params }) -> Gooey.AsyncApiResponseModelV3
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.peopleAlsoAskAnswersFromADoc.asyncRelatedQnaMakerDoc({
+ searchQuery: "search_query",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.RelatedQnADocPageRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `PeopleAlsoAskAnswersFromADoc.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.peopleAlsoAskAnswersFromADoc.statusRelatedQnaMakerDoc({ ...params }) -> Gooey.RelatedQnADocPageStatusResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.peopleAlsoAskAnswersFromADoc.statusRelatedQnaMakerDoc({
+ runId: "run_id",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.StatusRelatedQnaMakerDocRequest`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `PeopleAlsoAskAnswersFromADoc.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## Misc
+
+ client.misc.getBalance() -> Gooey.BalanceResponse
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.misc.getBalance();
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**requestOptions: `Misc.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.misc.videoBotsBroadcast({ ...params }) -> unknown
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.misc.videoBotsBroadcast({
+ text: "text",
+});
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**request: `Gooey.BotBroadcastRequestModel`**
+
+
+
+
+
+
+
+-
+
+**requestOptions: `Misc.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ client.misc.health() -> unknown
+
+
+
+-
+
+#### 🔌 Usage
+
+
+
+-
+
+
+
+-
+
+```ts
+await client.misc.health();
+```
+
+
+
+
+
+
+
+
+
+#### ⚙️ Parameters
+
+
+
+-
+
+
+
+-
+
+**requestOptions: `Misc.RequestOptions`**
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Client.ts b/src/Client.ts
new file mode 100644
index 0000000..84c63a8
--- /dev/null
+++ b/src/Client.ts
@@ -0,0 +1,281 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "./core";
+import { CopilotIntegrations } from "./api/resources/copilotIntegrations/client/Client";
+import { CopilotForYourEnterprise } from "./api/resources/copilotForYourEnterprise/client/Client";
+import { AiAnimationGenerator } from "./api/resources/aiAnimationGenerator/client/Client";
+import { AiArtQrCode } from "./api/resources/aiArtQrCode/client/Client";
+import { GeneratePeopleAlsoAskSeoContent } from "./api/resources/generatePeopleAlsoAskSeoContent/client/Client";
+import { CreateAPerfectSeoOptimizedTitleParagraph } from "./api/resources/createAPerfectSeoOptimizedTitleParagraph/client/Client";
+import { WebSearchGpt3 } from "./api/resources/webSearchGpt3/client/Client";
+import { ProfileLookupGpt3ForAiPersonalizedEmails } from "./api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/Client";
+import { BulkRunner } from "./api/resources/bulkRunner/client/Client";
+import { Evaluator } from "./api/resources/evaluator/client/Client";
+import { SyntheticDataMakerForVideosPdFs } from "./api/resources/syntheticDataMakerForVideosPdFs/client/Client";
+import { LargeLanguageModelsGpt3 } from "./api/resources/largeLanguageModelsGpt3/client/Client";
+import { SearchYourDocsWithGpt } from "./api/resources/searchYourDocsWithGpt/client/Client";
+import { SmartGpt } from "./api/resources/smartGpt/client/Client";
+import { SummarizeYourDocsWithGpt } from "./api/resources/summarizeYourDocsWithGpt/client/Client";
+import { Functions } from "./api/resources/functions/client/Client";
+import { LipSyncing } from "./api/resources/lipSyncing/client/Client";
+import { LipsyncVideoWithAnyText } from "./api/resources/lipsyncVideoWithAnyText/client/Client";
+import { CompareAiVoiceGenerators } from "./api/resources/compareAiVoiceGenerators/client/Client";
+import { SpeechRecognitionTranslation } from "./api/resources/speechRecognitionTranslation/client/Client";
+import { TextGuidedAudioGenerator } from "./api/resources/textGuidedAudioGenerator/client/Client";
+import { CompareAiTranslations } from "./api/resources/compareAiTranslations/client/Client";
+import { EditAnImageWithAiPrompt } from "./api/resources/editAnImageWithAiPrompt/client/Client";
+import { CompareAiImageGenerators } from "./api/resources/compareAiImageGenerators/client/Client";
+import { GenerateProductPhotoBackgrounds } from "./api/resources/generateProductPhotoBackgrounds/client/Client";
+import { AiImageWithAFace } from "./api/resources/aiImageWithAFace/client/Client";
+import { AiGeneratedPhotoFromEmailProfileLookup } from "./api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/Client";
+import { RenderImageSearchResultsWithAi } from "./api/resources/renderImageSearchResultsWithAi/client/Client";
+import { AiBackgroundChanger } from "./api/resources/aiBackgroundChanger/client/Client";
+import { CompareAiImageUpscalers } from "./api/resources/compareAiImageUpscalers/client/Client";
+import { ChyronPlantBot } from "./api/resources/chyronPlantBot/client/Client";
+import { LetterWriter } from "./api/resources/letterWriter/client/Client";
+import { Embeddings } from "./api/resources/embeddings/client/Client";
+import { PeopleAlsoAskAnswersFromADoc } from "./api/resources/peopleAlsoAskAnswersFromADoc/client/Client";
+import { Misc } from "./api/resources/misc/client/Client";
+
+export declare namespace GooeyClient {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class GooeyClient {
+ constructor(protected readonly _options: GooeyClient.Options) {}
+
+ protected _copilotIntegrations: CopilotIntegrations | undefined;
+
+ public get copilotIntegrations(): CopilotIntegrations {
+ return (this._copilotIntegrations ??= new CopilotIntegrations(this._options));
+ }
+
+ protected _copilotForYourEnterprise: CopilotForYourEnterprise | undefined;
+
+ public get copilotForYourEnterprise(): CopilotForYourEnterprise {
+ return (this._copilotForYourEnterprise ??= new CopilotForYourEnterprise(this._options));
+ }
+
+ protected _aiAnimationGenerator: AiAnimationGenerator | undefined;
+
+ public get aiAnimationGenerator(): AiAnimationGenerator {
+ return (this._aiAnimationGenerator ??= new AiAnimationGenerator(this._options));
+ }
+
+ protected _aiArtQrCode: AiArtQrCode | undefined;
+
+ public get aiArtQrCode(): AiArtQrCode {
+ return (this._aiArtQrCode ??= new AiArtQrCode(this._options));
+ }
+
+ protected _generatePeopleAlsoAskSeoContent: GeneratePeopleAlsoAskSeoContent | undefined;
+
+ public get generatePeopleAlsoAskSeoContent(): GeneratePeopleAlsoAskSeoContent {
+ return (this._generatePeopleAlsoAskSeoContent ??= new GeneratePeopleAlsoAskSeoContent(this._options));
+ }
+
+ protected _createAPerfectSeoOptimizedTitleParagraph: CreateAPerfectSeoOptimizedTitleParagraph | undefined;
+
+ public get createAPerfectSeoOptimizedTitleParagraph(): CreateAPerfectSeoOptimizedTitleParagraph {
+ return (this._createAPerfectSeoOptimizedTitleParagraph ??= new CreateAPerfectSeoOptimizedTitleParagraph(
+ this._options
+ ));
+ }
+
+ protected _webSearchGpt3: WebSearchGpt3 | undefined;
+
+ public get webSearchGpt3(): WebSearchGpt3 {
+ return (this._webSearchGpt3 ??= new WebSearchGpt3(this._options));
+ }
+
+ protected _profileLookupGpt3ForAiPersonalizedEmails: ProfileLookupGpt3ForAiPersonalizedEmails | undefined;
+
+ public get profileLookupGpt3ForAiPersonalizedEmails(): ProfileLookupGpt3ForAiPersonalizedEmails {
+ return (this._profileLookupGpt3ForAiPersonalizedEmails ??= new ProfileLookupGpt3ForAiPersonalizedEmails(
+ this._options
+ ));
+ }
+
+ protected _bulkRunner: BulkRunner | undefined;
+
+ public get bulkRunner(): BulkRunner {
+ return (this._bulkRunner ??= new BulkRunner(this._options));
+ }
+
+ protected _evaluator: Evaluator | undefined;
+
+ public get evaluator(): Evaluator {
+ return (this._evaluator ??= new Evaluator(this._options));
+ }
+
+ protected _syntheticDataMakerForVideosPdFs: SyntheticDataMakerForVideosPdFs | undefined;
+
+ public get syntheticDataMakerForVideosPdFs(): SyntheticDataMakerForVideosPdFs {
+ return (this._syntheticDataMakerForVideosPdFs ??= new SyntheticDataMakerForVideosPdFs(this._options));
+ }
+
+ protected _largeLanguageModelsGpt3: LargeLanguageModelsGpt3 | undefined;
+
+ public get largeLanguageModelsGpt3(): LargeLanguageModelsGpt3 {
+ return (this._largeLanguageModelsGpt3 ??= new LargeLanguageModelsGpt3(this._options));
+ }
+
+ protected _searchYourDocsWithGpt: SearchYourDocsWithGpt | undefined;
+
+ public get searchYourDocsWithGpt(): SearchYourDocsWithGpt {
+ return (this._searchYourDocsWithGpt ??= new SearchYourDocsWithGpt(this._options));
+ }
+
+ protected _smartGpt: SmartGpt | undefined;
+
+ public get smartGpt(): SmartGpt {
+ return (this._smartGpt ??= new SmartGpt(this._options));
+ }
+
+ protected _summarizeYourDocsWithGpt: SummarizeYourDocsWithGpt | undefined;
+
+ public get summarizeYourDocsWithGpt(): SummarizeYourDocsWithGpt {
+ return (this._summarizeYourDocsWithGpt ??= new SummarizeYourDocsWithGpt(this._options));
+ }
+
+ protected _functions: Functions | undefined;
+
+ public get functions(): Functions {
+ return (this._functions ??= new Functions(this._options));
+ }
+
+ protected _lipSyncing: LipSyncing | undefined;
+
+ public get lipSyncing(): LipSyncing {
+ return (this._lipSyncing ??= new LipSyncing(this._options));
+ }
+
+ protected _lipsyncVideoWithAnyText: LipsyncVideoWithAnyText | undefined;
+
+ public get lipsyncVideoWithAnyText(): LipsyncVideoWithAnyText {
+ return (this._lipsyncVideoWithAnyText ??= new LipsyncVideoWithAnyText(this._options));
+ }
+
+ protected _compareAiVoiceGenerators: CompareAiVoiceGenerators | undefined;
+
+ public get compareAiVoiceGenerators(): CompareAiVoiceGenerators {
+ return (this._compareAiVoiceGenerators ??= new CompareAiVoiceGenerators(this._options));
+ }
+
+ protected _speechRecognitionTranslation: SpeechRecognitionTranslation | undefined;
+
+ public get speechRecognitionTranslation(): SpeechRecognitionTranslation {
+ return (this._speechRecognitionTranslation ??= new SpeechRecognitionTranslation(this._options));
+ }
+
+ protected _textGuidedAudioGenerator: TextGuidedAudioGenerator | undefined;
+
+ public get textGuidedAudioGenerator(): TextGuidedAudioGenerator {
+ return (this._textGuidedAudioGenerator ??= new TextGuidedAudioGenerator(this._options));
+ }
+
+ protected _compareAiTranslations: CompareAiTranslations | undefined;
+
+ public get compareAiTranslations(): CompareAiTranslations {
+ return (this._compareAiTranslations ??= new CompareAiTranslations(this._options));
+ }
+
+ protected _editAnImageWithAiPrompt: EditAnImageWithAiPrompt | undefined;
+
+ public get editAnImageWithAiPrompt(): EditAnImageWithAiPrompt {
+ return (this._editAnImageWithAiPrompt ??= new EditAnImageWithAiPrompt(this._options));
+ }
+
+ protected _compareAiImageGenerators: CompareAiImageGenerators | undefined;
+
+ public get compareAiImageGenerators(): CompareAiImageGenerators {
+ return (this._compareAiImageGenerators ??= new CompareAiImageGenerators(this._options));
+ }
+
+ protected _generateProductPhotoBackgrounds: GenerateProductPhotoBackgrounds | undefined;
+
+ public get generateProductPhotoBackgrounds(): GenerateProductPhotoBackgrounds {
+ return (this._generateProductPhotoBackgrounds ??= new GenerateProductPhotoBackgrounds(this._options));
+ }
+
+ protected _aiImageWithAFace: AiImageWithAFace | undefined;
+
+ public get aiImageWithAFace(): AiImageWithAFace {
+ return (this._aiImageWithAFace ??= new AiImageWithAFace(this._options));
+ }
+
+ protected _aiGeneratedPhotoFromEmailProfileLookup: AiGeneratedPhotoFromEmailProfileLookup | undefined;
+
+ public get aiGeneratedPhotoFromEmailProfileLookup(): AiGeneratedPhotoFromEmailProfileLookup {
+ return (this._aiGeneratedPhotoFromEmailProfileLookup ??= new AiGeneratedPhotoFromEmailProfileLookup(
+ this._options
+ ));
+ }
+
+ protected _renderImageSearchResultsWithAi: RenderImageSearchResultsWithAi | undefined;
+
+ public get renderImageSearchResultsWithAi(): RenderImageSearchResultsWithAi {
+ return (this._renderImageSearchResultsWithAi ??= new RenderImageSearchResultsWithAi(this._options));
+ }
+
+ protected _aiBackgroundChanger: AiBackgroundChanger | undefined;
+
+ public get aiBackgroundChanger(): AiBackgroundChanger {
+ return (this._aiBackgroundChanger ??= new AiBackgroundChanger(this._options));
+ }
+
+ protected _compareAiImageUpscalers: CompareAiImageUpscalers | undefined;
+
+ public get compareAiImageUpscalers(): CompareAiImageUpscalers {
+ return (this._compareAiImageUpscalers ??= new CompareAiImageUpscalers(this._options));
+ }
+
+ protected _chyronPlantBot: ChyronPlantBot | undefined;
+
+ public get chyronPlantBot(): ChyronPlantBot {
+ return (this._chyronPlantBot ??= new ChyronPlantBot(this._options));
+ }
+
+ protected _letterWriter: LetterWriter | undefined;
+
+ public get letterWriter(): LetterWriter {
+ return (this._letterWriter ??= new LetterWriter(this._options));
+ }
+
+ protected _embeddings: Embeddings | undefined;
+
+ public get embeddings(): Embeddings {
+ return (this._embeddings ??= new Embeddings(this._options));
+ }
+
+ protected _peopleAlsoAskAnswersFromADoc: PeopleAlsoAskAnswersFromADoc | undefined;
+
+ public get peopleAlsoAskAnswersFromADoc(): PeopleAlsoAskAnswersFromADoc {
+ return (this._peopleAlsoAskAnswersFromADoc ??= new PeopleAlsoAskAnswersFromADoc(this._options));
+ }
+
+ protected _misc: Misc | undefined;
+
+ public get misc(): Misc {
+ return (this._misc ??= new Misc(this._options));
+ }
+}
diff --git a/src/api/errors/InternalServerError.ts b/src/api/errors/InternalServerError.ts
new file mode 100644
index 0000000..06a69a3
--- /dev/null
+++ b/src/api/errors/InternalServerError.ts
@@ -0,0 +1,17 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as errors from "../../errors/index";
+import * as Gooey from "../index";
+
+export class InternalServerError extends errors.GooeyError {
+ constructor(body: Gooey.FailedReponseModelV2) {
+ super({
+ message: "InternalServerError",
+ statusCode: 500,
+ body: body,
+ });
+ Object.setPrototypeOf(this, InternalServerError.prototype);
+ }
+}
diff --git a/src/api/errors/PaymentRequiredError.ts b/src/api/errors/PaymentRequiredError.ts
new file mode 100644
index 0000000..331e173
--- /dev/null
+++ b/src/api/errors/PaymentRequiredError.ts
@@ -0,0 +1,16 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as errors from "../../errors/index";
+
+export class PaymentRequiredError extends errors.GooeyError {
+ constructor(body?: unknown) {
+ super({
+ message: "PaymentRequiredError",
+ statusCode: 402,
+ body: body,
+ });
+ Object.setPrototypeOf(this, PaymentRequiredError.prototype);
+ }
+}
diff --git a/src/api/errors/TooManyRequestsError.ts b/src/api/errors/TooManyRequestsError.ts
new file mode 100644
index 0000000..c7e7a84
--- /dev/null
+++ b/src/api/errors/TooManyRequestsError.ts
@@ -0,0 +1,17 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as errors from "../../errors/index";
+import * as Gooey from "../index";
+
+export class TooManyRequestsError extends errors.GooeyError {
+ constructor(body: Gooey.GenericErrorResponse) {
+ super({
+ message: "TooManyRequestsError",
+ statusCode: 429,
+ body: body,
+ });
+ Object.setPrototypeOf(this, TooManyRequestsError.prototype);
+ }
+}
diff --git a/src/api/errors/UnprocessableEntityError.ts b/src/api/errors/UnprocessableEntityError.ts
new file mode 100644
index 0000000..478090e
--- /dev/null
+++ b/src/api/errors/UnprocessableEntityError.ts
@@ -0,0 +1,17 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as errors from "../../errors/index";
+import * as Gooey from "../index";
+
+export class UnprocessableEntityError extends errors.GooeyError {
+ constructor(body: Gooey.HttpValidationError) {
+ super({
+ message: "UnprocessableEntityError",
+ statusCode: 422,
+ body: body,
+ });
+ Object.setPrototypeOf(this, UnprocessableEntityError.prototype);
+ }
+}
diff --git a/src/api/errors/index.ts b/src/api/errors/index.ts
new file mode 100644
index 0000000..ff89aab
--- /dev/null
+++ b/src/api/errors/index.ts
@@ -0,0 +1,4 @@
+export * from "./PaymentRequiredError";
+export * from "./UnprocessableEntityError";
+export * from "./TooManyRequestsError";
+export * from "./InternalServerError";
diff --git a/src/api/index.ts b/src/api/index.ts
new file mode 100644
index 0000000..3006072
--- /dev/null
+++ b/src/api/index.ts
@@ -0,0 +1,3 @@
+export * from "./resources";
+export * from "./types";
+export * from "./errors";
diff --git a/src/api/resources/aiAnimationGenerator/client/Client.ts b/src/api/resources/aiAnimationGenerator/client/Client.ts
new file mode 100644
index 0000000..842d330
--- /dev/null
+++ b/src/api/resources/aiAnimationGenerator/client/Client.ts
@@ -0,0 +1,344 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace AiAnimationGenerator {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class AiAnimationGenerator {
+ constructor(protected readonly _options: AiAnimationGenerator.Options) {}
+
+ /**
+ * @param {Gooey.DeforumSdPageRequest} request
+ * @param {AiAnimationGenerator.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.aiAnimationGenerator.deforumSd({
+ * animationPrompts: [{
+ * frame: "frame",
+ * prompt: "prompt"
+ * }]
+ * })
+ */
+ public async deforumSd(
+ request: Gooey.DeforumSdPageRequest,
+ requestOptions?: AiAnimationGenerator.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/DeforumSD/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.DeforumSdPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.DeforumSdPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.DeforumSdPageRequest} request
+ * @param {AiAnimationGenerator.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiAnimationGenerator.asyncDeforumSd({
+ * animationPrompts: [{
+ * frame: "frame",
+ * prompt: "prompt"
+ * }]
+ * })
+ */
+ public async asyncDeforumSd(
+ request: Gooey.DeforumSdPageRequest,
+ requestOptions?: AiAnimationGenerator.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/DeforumSD/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.DeforumSdPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusDeforumSdRequest} request
+ * @param {AiAnimationGenerator.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiAnimationGenerator.statusDeforumSd({
+ * runId: "run_id"
+ * })
+ */
+ public async statusDeforumSd(
+ request: Gooey.StatusDeforumSdRequest,
+ requestOptions?: AiAnimationGenerator.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/DeforumSD/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.DeforumSdPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/aiAnimationGenerator/client/index.ts b/src/api/resources/aiAnimationGenerator/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/aiAnimationGenerator/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/aiAnimationGenerator/client/requests/StatusDeforumSdRequest.ts b/src/api/resources/aiAnimationGenerator/client/requests/StatusDeforumSdRequest.ts
new file mode 100644
index 0000000..87292b7
--- /dev/null
+++ b/src/api/resources/aiAnimationGenerator/client/requests/StatusDeforumSdRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusDeforumSdRequest {
+ runId: string;
+}
diff --git a/src/api/resources/aiAnimationGenerator/client/requests/index.ts b/src/api/resources/aiAnimationGenerator/client/requests/index.ts
new file mode 100644
index 0000000..c07286a
--- /dev/null
+++ b/src/api/resources/aiAnimationGenerator/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusDeforumSdRequest } from "./StatusDeforumSdRequest";
diff --git a/src/api/resources/aiAnimationGenerator/index.ts b/src/api/resources/aiAnimationGenerator/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/aiAnimationGenerator/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/aiArtQrCode/client/Client.ts b/src/api/resources/aiArtQrCode/client/Client.ts
new file mode 100644
index 0000000..6f626f9
--- /dev/null
+++ b/src/api/resources/aiArtQrCode/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace AiArtQrCode {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class AiArtQrCode {
+ constructor(protected readonly _options: AiArtQrCode.Options) {}
+
+ /**
+ * @param {Gooey.QrCodeGeneratorPageRequest} request
+ * @param {AiArtQrCode.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.aiArtQrCode.artQrCode({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async artQrCode(
+ request: Gooey.QrCodeGeneratorPageRequest,
+ requestOptions?: AiArtQrCode.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/art-qr-code/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.QrCodeGeneratorPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.QrCodeGeneratorPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.QrCodeGeneratorPageRequest} request
+ * @param {AiArtQrCode.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiArtQrCode.asyncArtQrCode({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async asyncArtQrCode(
+ request: Gooey.QrCodeGeneratorPageRequest,
+ requestOptions?: AiArtQrCode.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/art-qr-code/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.QrCodeGeneratorPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusArtQrCodeRequest} request
+ * @param {AiArtQrCode.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiArtQrCode.statusArtQrCode({
+ * runId: "run_id"
+ * })
+ */
+ public async statusArtQrCode(
+ request: Gooey.StatusArtQrCodeRequest,
+ requestOptions?: AiArtQrCode.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/art-qr-code/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.QrCodeGeneratorPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/aiArtQrCode/client/index.ts b/src/api/resources/aiArtQrCode/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/aiArtQrCode/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/aiArtQrCode/client/requests/StatusArtQrCodeRequest.ts b/src/api/resources/aiArtQrCode/client/requests/StatusArtQrCodeRequest.ts
new file mode 100644
index 0000000..c433ee6
--- /dev/null
+++ b/src/api/resources/aiArtQrCode/client/requests/StatusArtQrCodeRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusArtQrCodeRequest {
+ runId: string;
+}
diff --git a/src/api/resources/aiArtQrCode/client/requests/index.ts b/src/api/resources/aiArtQrCode/client/requests/index.ts
new file mode 100644
index 0000000..c407e61
--- /dev/null
+++ b/src/api/resources/aiArtQrCode/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusArtQrCodeRequest } from "./StatusArtQrCodeRequest";
diff --git a/src/api/resources/aiArtQrCode/index.ts b/src/api/resources/aiArtQrCode/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/aiArtQrCode/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/aiBackgroundChanger/client/Client.ts b/src/api/resources/aiBackgroundChanger/client/Client.ts
new file mode 100644
index 0000000..d243d55
--- /dev/null
+++ b/src/api/resources/aiBackgroundChanger/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace AiBackgroundChanger {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class AiBackgroundChanger {
+ constructor(protected readonly _options: AiBackgroundChanger.Options) {}
+
+ /**
+ * @param {Gooey.ImageSegmentationPageRequest} request
+ * @param {AiBackgroundChanger.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.aiBackgroundChanger.imageSegmentation({
+ * inputImage: "input_image"
+ * })
+ */
+ public async imageSegmentation(
+ request: Gooey.ImageSegmentationPageRequest,
+ requestOptions?: AiBackgroundChanger.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/ImageSegmentation/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.ImageSegmentationPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.ImageSegmentationPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.ImageSegmentationPageRequest} request
+ * @param {AiBackgroundChanger.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiBackgroundChanger.asyncImageSegmentation({
+ * inputImage: "input_image"
+ * })
+ */
+ public async asyncImageSegmentation(
+ request: Gooey.ImageSegmentationPageRequest,
+ requestOptions?: AiBackgroundChanger.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/ImageSegmentation/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.ImageSegmentationPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusImageSegmentationRequest} request
+ * @param {AiBackgroundChanger.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiBackgroundChanger.statusImageSegmentation({
+ * runId: "run_id"
+ * })
+ */
+ public async statusImageSegmentation(
+ request: Gooey.StatusImageSegmentationRequest,
+ requestOptions?: AiBackgroundChanger.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/ImageSegmentation/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.ImageSegmentationPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/aiBackgroundChanger/client/index.ts b/src/api/resources/aiBackgroundChanger/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/aiBackgroundChanger/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/aiBackgroundChanger/client/requests/StatusImageSegmentationRequest.ts b/src/api/resources/aiBackgroundChanger/client/requests/StatusImageSegmentationRequest.ts
new file mode 100644
index 0000000..a3763e2
--- /dev/null
+++ b/src/api/resources/aiBackgroundChanger/client/requests/StatusImageSegmentationRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusImageSegmentationRequest {
+ runId: string;
+}
diff --git a/src/api/resources/aiBackgroundChanger/client/requests/index.ts b/src/api/resources/aiBackgroundChanger/client/requests/index.ts
new file mode 100644
index 0000000..86a37b4
--- /dev/null
+++ b/src/api/resources/aiBackgroundChanger/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusImageSegmentationRequest } from "./StatusImageSegmentationRequest";
diff --git a/src/api/resources/aiBackgroundChanger/index.ts b/src/api/resources/aiBackgroundChanger/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/aiBackgroundChanger/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/Client.ts b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/Client.ts
new file mode 100644
index 0000000..fd5b39e
--- /dev/null
+++ b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/Client.ts
@@ -0,0 +1,340 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace AiGeneratedPhotoFromEmailProfileLookup {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class AiGeneratedPhotoFromEmailProfileLookup {
+ constructor(protected readonly _options: AiGeneratedPhotoFromEmailProfileLookup.Options) {}
+
+ /**
+ * @param {Gooey.EmailFaceInpaintingPageRequest} request
+ * @param {AiGeneratedPhotoFromEmailProfileLookup.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.aiGeneratedPhotoFromEmailProfileLookup.emailFaceInpainting({
+ * emailAddress: "sean@dara.network",
+ * textPrompt: "winter's day in paris"
+ * })
+ */
+ public async emailFaceInpainting(
+ request: Gooey.EmailFaceInpaintingPageRequest,
+ requestOptions?: AiGeneratedPhotoFromEmailProfileLookup.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/EmailFaceInpainting/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.EmailFaceInpaintingPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.EmailFaceInpaintingPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.EmailFaceInpaintingPageRequest} request
+ * @param {AiGeneratedPhotoFromEmailProfileLookup.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiGeneratedPhotoFromEmailProfileLookup.asyncEmailFaceInpainting({
+ * emailAddress: "sean@dara.network",
+ * textPrompt: "winter's day in paris"
+ * })
+ */
+ public async asyncEmailFaceInpainting(
+ request: Gooey.EmailFaceInpaintingPageRequest,
+ requestOptions?: AiGeneratedPhotoFromEmailProfileLookup.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/EmailFaceInpainting/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.EmailFaceInpaintingPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusEmailFaceInpaintingRequest} request
+ * @param {AiGeneratedPhotoFromEmailProfileLookup.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiGeneratedPhotoFromEmailProfileLookup.statusEmailFaceInpainting({
+ * runId: "run_id"
+ * })
+ */
+ public async statusEmailFaceInpainting(
+ request: Gooey.StatusEmailFaceInpaintingRequest,
+ requestOptions?: AiGeneratedPhotoFromEmailProfileLookup.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/EmailFaceInpainting/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.EmailFaceInpaintingPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/index.ts b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/StatusEmailFaceInpaintingRequest.ts b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/StatusEmailFaceInpaintingRequest.ts
new file mode 100644
index 0000000..c57ca13
--- /dev/null
+++ b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/StatusEmailFaceInpaintingRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusEmailFaceInpaintingRequest {
+ runId: string;
+}
diff --git a/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/index.ts b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/index.ts
new file mode 100644
index 0000000..9dc765d
--- /dev/null
+++ b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusEmailFaceInpaintingRequest } from "./StatusEmailFaceInpaintingRequest";
diff --git a/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/index.ts b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/aiGeneratedPhotoFromEmailProfileLookup/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/aiImageWithAFace/client/Client.ts b/src/api/resources/aiImageWithAFace/client/Client.ts
new file mode 100644
index 0000000..221a5a3
--- /dev/null
+++ b/src/api/resources/aiImageWithAFace/client/Client.ts
@@ -0,0 +1,340 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace AiImageWithAFace {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class AiImageWithAFace {
+ constructor(protected readonly _options: AiImageWithAFace.Options) {}
+
+ /**
+ * @param {Gooey.FaceInpaintingPageRequest} request
+ * @param {AiImageWithAFace.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.aiImageWithAFace.faceInpainting({
+ * inputImage: "input_image",
+ * textPrompt: "tony stark from the iron man"
+ * })
+ */
+ public async faceInpainting(
+ request: Gooey.FaceInpaintingPageRequest,
+ requestOptions?: AiImageWithAFace.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/FaceInpainting/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.FaceInpaintingPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.FaceInpaintingPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.FaceInpaintingPageRequest} request
+ * @param {AiImageWithAFace.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiImageWithAFace.asyncFaceInpainting({
+ * inputImage: "input_image",
+ * textPrompt: "tony stark from the iron man"
+ * })
+ */
+ public async asyncFaceInpainting(
+ request: Gooey.FaceInpaintingPageRequest,
+ requestOptions?: AiImageWithAFace.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/FaceInpainting/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.FaceInpaintingPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusFaceInpaintingRequest} request
+ * @param {AiImageWithAFace.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.aiImageWithAFace.statusFaceInpainting({
+ * runId: "run_id"
+ * })
+ */
+ public async statusFaceInpainting(
+ request: Gooey.StatusFaceInpaintingRequest,
+ requestOptions?: AiImageWithAFace.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/FaceInpainting/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.FaceInpaintingPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/aiImageWithAFace/client/index.ts b/src/api/resources/aiImageWithAFace/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/aiImageWithAFace/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/aiImageWithAFace/client/requests/StatusFaceInpaintingRequest.ts b/src/api/resources/aiImageWithAFace/client/requests/StatusFaceInpaintingRequest.ts
new file mode 100644
index 0000000..ee03839
--- /dev/null
+++ b/src/api/resources/aiImageWithAFace/client/requests/StatusFaceInpaintingRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusFaceInpaintingRequest {
+ runId: string;
+}
diff --git a/src/api/resources/aiImageWithAFace/client/requests/index.ts b/src/api/resources/aiImageWithAFace/client/requests/index.ts
new file mode 100644
index 0000000..7135cce
--- /dev/null
+++ b/src/api/resources/aiImageWithAFace/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusFaceInpaintingRequest } from "./StatusFaceInpaintingRequest";
diff --git a/src/api/resources/aiImageWithAFace/index.ts b/src/api/resources/aiImageWithAFace/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/aiImageWithAFace/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/bulkRunner/client/Client.ts b/src/api/resources/bulkRunner/client/Client.ts
new file mode 100644
index 0000000..7f7a47f
--- /dev/null
+++ b/src/api/resources/bulkRunner/client/Client.ts
@@ -0,0 +1,352 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace BulkRunner {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class BulkRunner {
+ constructor(protected readonly _options: BulkRunner.Options) {}
+
+ /**
+ * @param {Gooey.BulkRunnerPageRequest} request
+ * @param {BulkRunner.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.bulkRunner.post({
+ * documents: ["documents"],
+ * runUrls: ["run_urls"],
+ * inputColumns: {
+ * "input_columns": "input_columns"
+ * },
+ * outputColumns: {
+ * "output_columns": "output_columns"
+ * }
+ * })
+ */
+ public async post(
+ request: Gooey.BulkRunnerPageRequest,
+ requestOptions?: BulkRunner.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/bulk-runner/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.BulkRunnerPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.BulkRunnerPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.BulkRunnerPageRequest} request
+ * @param {BulkRunner.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.bulkRunner.asyncBulkRunner({
+ * documents: ["documents"],
+ * runUrls: ["run_urls"],
+ * inputColumns: {
+ * "input_columns": "input_columns"
+ * },
+ * outputColumns: {
+ * "output_columns": "output_columns"
+ * }
+ * })
+ */
+ public async asyncBulkRunner(
+ request: Gooey.BulkRunnerPageRequest,
+ requestOptions?: BulkRunner.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/bulk-runner/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.BulkRunnerPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusBulkRunnerRequest} request
+ * @param {BulkRunner.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.bulkRunner.statusBulkRunner({
+ * runId: "run_id"
+ * })
+ */
+ public async statusBulkRunner(
+ request: Gooey.StatusBulkRunnerRequest,
+ requestOptions?: BulkRunner.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/bulk-runner/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.BulkRunnerPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/bulkRunner/client/index.ts b/src/api/resources/bulkRunner/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/bulkRunner/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/bulkRunner/client/requests/StatusBulkRunnerRequest.ts b/src/api/resources/bulkRunner/client/requests/StatusBulkRunnerRequest.ts
new file mode 100644
index 0000000..eec8937
--- /dev/null
+++ b/src/api/resources/bulkRunner/client/requests/StatusBulkRunnerRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusBulkRunnerRequest {
+ runId: string;
+}
diff --git a/src/api/resources/bulkRunner/client/requests/index.ts b/src/api/resources/bulkRunner/client/requests/index.ts
new file mode 100644
index 0000000..b9b5369
--- /dev/null
+++ b/src/api/resources/bulkRunner/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusBulkRunnerRequest } from "./StatusBulkRunnerRequest";
diff --git a/src/api/resources/bulkRunner/index.ts b/src/api/resources/bulkRunner/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/bulkRunner/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/chyronPlantBot/client/Client.ts b/src/api/resources/chyronPlantBot/client/Client.ts
new file mode 100644
index 0000000..b305a86
--- /dev/null
+++ b/src/api/resources/chyronPlantBot/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace ChyronPlantBot {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class ChyronPlantBot {
+ constructor(protected readonly _options: ChyronPlantBot.Options) {}
+
+ /**
+ * @param {Gooey.ChyronPlantPageRequest} request
+ * @param {ChyronPlantBot.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.chyronPlantBot.chyronPlant({
+ * midiNotes: "C#1 B6 A2 A1 A3 A2"
+ * })
+ */
+ public async chyronPlant(
+ request: Gooey.ChyronPlantPageRequest,
+ requestOptions?: ChyronPlantBot.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/ChyronPlant/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.ChyronPlantPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.ChyronPlantPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.ChyronPlantPageRequest} request
+ * @param {ChyronPlantBot.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.chyronPlantBot.asyncChyronPlant({
+ * midiNotes: "C#1 B6 A2 A1 A3 A2"
+ * })
+ */
+ public async asyncChyronPlant(
+ request: Gooey.ChyronPlantPageRequest,
+ requestOptions?: ChyronPlantBot.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/ChyronPlant/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.ChyronPlantPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusChyronPlantRequest} request
+ * @param {ChyronPlantBot.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.chyronPlantBot.statusChyronPlant({
+ * runId: "run_id"
+ * })
+ */
+ public async statusChyronPlant(
+ request: Gooey.StatusChyronPlantRequest,
+ requestOptions?: ChyronPlantBot.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/ChyronPlant/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.ChyronPlantPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/chyronPlantBot/client/index.ts b/src/api/resources/chyronPlantBot/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/chyronPlantBot/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/chyronPlantBot/client/requests/StatusChyronPlantRequest.ts b/src/api/resources/chyronPlantBot/client/requests/StatusChyronPlantRequest.ts
new file mode 100644
index 0000000..1cd802e
--- /dev/null
+++ b/src/api/resources/chyronPlantBot/client/requests/StatusChyronPlantRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusChyronPlantRequest {
+ runId: string;
+}
diff --git a/src/api/resources/chyronPlantBot/client/requests/index.ts b/src/api/resources/chyronPlantBot/client/requests/index.ts
new file mode 100644
index 0000000..d1278dc
--- /dev/null
+++ b/src/api/resources/chyronPlantBot/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusChyronPlantRequest } from "./StatusChyronPlantRequest";
diff --git a/src/api/resources/chyronPlantBot/index.ts b/src/api/resources/chyronPlantBot/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/chyronPlantBot/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/compareAiImageGenerators/client/Client.ts b/src/api/resources/compareAiImageGenerators/client/Client.ts
new file mode 100644
index 0000000..f014523
--- /dev/null
+++ b/src/api/resources/compareAiImageGenerators/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CompareAiImageGenerators {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CompareAiImageGenerators {
+ constructor(protected readonly _options: CompareAiImageGenerators.Options) {}
+
+ /**
+ * @param {Gooey.CompareText2ImgPageRequest} request
+ * @param {CompareAiImageGenerators.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.compareAiImageGenerators.compareText2Img({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async compareText2Img(
+ request: Gooey.CompareText2ImgPageRequest,
+ requestOptions?: CompareAiImageGenerators.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/CompareText2Img/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CompareText2ImgPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CompareText2ImgPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.CompareText2ImgPageRequest} request
+ * @param {CompareAiImageGenerators.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiImageGenerators.asyncCompareText2Img({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async asyncCompareText2Img(
+ request: Gooey.CompareText2ImgPageRequest,
+ requestOptions?: CompareAiImageGenerators.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/CompareText2Img/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CompareText2ImgPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusCompareText2ImgRequest} request
+ * @param {CompareAiImageGenerators.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiImageGenerators.statusCompareText2Img({
+ * runId: "run_id"
+ * })
+ */
+ public async statusCompareText2Img(
+ request: Gooey.StatusCompareText2ImgRequest,
+ requestOptions?: CompareAiImageGenerators.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/CompareText2Img/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CompareText2ImgPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/compareAiImageGenerators/client/index.ts b/src/api/resources/compareAiImageGenerators/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/compareAiImageGenerators/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/compareAiImageGenerators/client/requests/StatusCompareText2ImgRequest.ts b/src/api/resources/compareAiImageGenerators/client/requests/StatusCompareText2ImgRequest.ts
new file mode 100644
index 0000000..8e0fff5
--- /dev/null
+++ b/src/api/resources/compareAiImageGenerators/client/requests/StatusCompareText2ImgRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusCompareText2ImgRequest {
+ runId: string;
+}
diff --git a/src/api/resources/compareAiImageGenerators/client/requests/index.ts b/src/api/resources/compareAiImageGenerators/client/requests/index.ts
new file mode 100644
index 0000000..ad838db
--- /dev/null
+++ b/src/api/resources/compareAiImageGenerators/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusCompareText2ImgRequest } from "./StatusCompareText2ImgRequest";
diff --git a/src/api/resources/compareAiImageGenerators/index.ts b/src/api/resources/compareAiImageGenerators/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/compareAiImageGenerators/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/compareAiImageUpscalers/client/Client.ts b/src/api/resources/compareAiImageUpscalers/client/Client.ts
new file mode 100644
index 0000000..c7dd222
--- /dev/null
+++ b/src/api/resources/compareAiImageUpscalers/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CompareAiImageUpscalers {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CompareAiImageUpscalers {
+ constructor(protected readonly _options: CompareAiImageUpscalers.Options) {}
+
+ /**
+ * @param {Gooey.CompareUpscalerPageRequest} request
+ * @param {CompareAiImageUpscalers.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.compareAiImageUpscalers.compareAiUpscalers({
+ * scale: 1
+ * })
+ */
+ public async compareAiUpscalers(
+ request: Gooey.CompareUpscalerPageRequest,
+ requestOptions?: CompareAiImageUpscalers.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/compare-ai-upscalers/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CompareUpscalerPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CompareUpscalerPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.CompareUpscalerPageRequest} request
+ * @param {CompareAiImageUpscalers.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiImageUpscalers.asyncCompareAiUpscalers({
+ * scale: 1
+ * })
+ */
+ public async asyncCompareAiUpscalers(
+ request: Gooey.CompareUpscalerPageRequest,
+ requestOptions?: CompareAiImageUpscalers.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/compare-ai-upscalers/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CompareUpscalerPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusCompareAiUpscalersRequest} request
+ * @param {CompareAiImageUpscalers.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiImageUpscalers.statusCompareAiUpscalers({
+ * runId: "run_id"
+ * })
+ */
+ public async statusCompareAiUpscalers(
+ request: Gooey.StatusCompareAiUpscalersRequest,
+ requestOptions?: CompareAiImageUpscalers.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/compare-ai-upscalers/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CompareUpscalerPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/compareAiImageUpscalers/client/index.ts b/src/api/resources/compareAiImageUpscalers/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/compareAiImageUpscalers/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/compareAiImageUpscalers/client/requests/StatusCompareAiUpscalersRequest.ts b/src/api/resources/compareAiImageUpscalers/client/requests/StatusCompareAiUpscalersRequest.ts
new file mode 100644
index 0000000..74694d2
--- /dev/null
+++ b/src/api/resources/compareAiImageUpscalers/client/requests/StatusCompareAiUpscalersRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusCompareAiUpscalersRequest {
+ runId: string;
+}
diff --git a/src/api/resources/compareAiImageUpscalers/client/requests/index.ts b/src/api/resources/compareAiImageUpscalers/client/requests/index.ts
new file mode 100644
index 0000000..bcdc6ae
--- /dev/null
+++ b/src/api/resources/compareAiImageUpscalers/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusCompareAiUpscalersRequest } from "./StatusCompareAiUpscalersRequest";
diff --git a/src/api/resources/compareAiImageUpscalers/index.ts b/src/api/resources/compareAiImageUpscalers/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/compareAiImageUpscalers/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/compareAiTranslations/client/Client.ts b/src/api/resources/compareAiTranslations/client/Client.ts
new file mode 100644
index 0000000..9946d0e
--- /dev/null
+++ b/src/api/resources/compareAiTranslations/client/Client.ts
@@ -0,0 +1,334 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CompareAiTranslations {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CompareAiTranslations {
+ constructor(protected readonly _options: CompareAiTranslations.Options) {}
+
+ /**
+ * @param {Gooey.TranslationPageRequest} request
+ * @param {CompareAiTranslations.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.compareAiTranslations.translate({})
+ */
+ public async translate(
+ request: Gooey.TranslationPageRequest,
+ requestOptions?: CompareAiTranslations.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/translate/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.TranslationPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.TranslationPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.TranslationPageRequest} request
+ * @param {CompareAiTranslations.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiTranslations.asyncTranslate({})
+ */
+ public async asyncTranslate(
+ request: Gooey.TranslationPageRequest,
+ requestOptions?: CompareAiTranslations.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/translate/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.TranslationPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusTranslateRequest} request
+ * @param {CompareAiTranslations.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiTranslations.statusTranslate({
+ * runId: "run_id"
+ * })
+ */
+ public async statusTranslate(
+ request: Gooey.StatusTranslateRequest,
+ requestOptions?: CompareAiTranslations.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/translate/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.TranslationPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/compareAiTranslations/client/index.ts b/src/api/resources/compareAiTranslations/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/compareAiTranslations/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/compareAiTranslations/client/requests/StatusTranslateRequest.ts b/src/api/resources/compareAiTranslations/client/requests/StatusTranslateRequest.ts
new file mode 100644
index 0000000..c6411ec
--- /dev/null
+++ b/src/api/resources/compareAiTranslations/client/requests/StatusTranslateRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusTranslateRequest {
+ runId: string;
+}
diff --git a/src/api/resources/compareAiTranslations/client/requests/index.ts b/src/api/resources/compareAiTranslations/client/requests/index.ts
new file mode 100644
index 0000000..9133079
--- /dev/null
+++ b/src/api/resources/compareAiTranslations/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusTranslateRequest } from "./StatusTranslateRequest";
diff --git a/src/api/resources/compareAiTranslations/index.ts b/src/api/resources/compareAiTranslations/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/compareAiTranslations/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/compareAiVoiceGenerators/client/Client.ts b/src/api/resources/compareAiVoiceGenerators/client/Client.ts
new file mode 100644
index 0000000..1ae8f81
--- /dev/null
+++ b/src/api/resources/compareAiVoiceGenerators/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CompareAiVoiceGenerators {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CompareAiVoiceGenerators {
+ constructor(protected readonly _options: CompareAiVoiceGenerators.Options) {}
+
+ /**
+ * @param {Gooey.TextToSpeechPageRequest} request
+ * @param {CompareAiVoiceGenerators.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.compareAiVoiceGenerators.textToSpeech({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async textToSpeech(
+ request: Gooey.TextToSpeechPageRequest,
+ requestOptions?: CompareAiVoiceGenerators.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/TextToSpeech/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.TextToSpeechPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.TextToSpeechPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.TextToSpeechPageRequest} request
+ * @param {CompareAiVoiceGenerators.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiVoiceGenerators.asyncTextToSpeech({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async asyncTextToSpeech(
+ request: Gooey.TextToSpeechPageRequest,
+ requestOptions?: CompareAiVoiceGenerators.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/TextToSpeech/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.TextToSpeechPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusTextToSpeechRequest} request
+ * @param {CompareAiVoiceGenerators.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.compareAiVoiceGenerators.statusTextToSpeech({
+ * runId: "run_id"
+ * })
+ */
+ public async statusTextToSpeech(
+ request: Gooey.StatusTextToSpeechRequest,
+ requestOptions?: CompareAiVoiceGenerators.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/TextToSpeech/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.TextToSpeechPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/compareAiVoiceGenerators/client/index.ts b/src/api/resources/compareAiVoiceGenerators/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/compareAiVoiceGenerators/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/compareAiVoiceGenerators/client/requests/StatusTextToSpeechRequest.ts b/src/api/resources/compareAiVoiceGenerators/client/requests/StatusTextToSpeechRequest.ts
new file mode 100644
index 0000000..8309b35
--- /dev/null
+++ b/src/api/resources/compareAiVoiceGenerators/client/requests/StatusTextToSpeechRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusTextToSpeechRequest {
+ runId: string;
+}
diff --git a/src/api/resources/compareAiVoiceGenerators/client/requests/index.ts b/src/api/resources/compareAiVoiceGenerators/client/requests/index.ts
new file mode 100644
index 0000000..4524caa
--- /dev/null
+++ b/src/api/resources/compareAiVoiceGenerators/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusTextToSpeechRequest } from "./StatusTextToSpeechRequest";
diff --git a/src/api/resources/compareAiVoiceGenerators/index.ts b/src/api/resources/compareAiVoiceGenerators/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/compareAiVoiceGenerators/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/copilotForYourEnterprise/client/Client.ts b/src/api/resources/copilotForYourEnterprise/client/Client.ts
new file mode 100644
index 0000000..1a3a031
--- /dev/null
+++ b/src/api/resources/copilotForYourEnterprise/client/Client.ts
@@ -0,0 +1,334 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CopilotForYourEnterprise {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CopilotForYourEnterprise {
+ constructor(protected readonly _options: CopilotForYourEnterprise.Options) {}
+
+ /**
+ * @param {Gooey.VideoBotsPageRequest} request
+ * @param {CopilotForYourEnterprise.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.copilotForYourEnterprise.videoBots({})
+ */
+ public async videoBots(
+ request: Gooey.VideoBotsPageRequest,
+ requestOptions?: CopilotForYourEnterprise.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/video-bots/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.VideoBotsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.VideoBotsPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.VideoBotsPageRequest} request
+ * @param {CopilotForYourEnterprise.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.copilotForYourEnterprise.asyncVideoBots({})
+ */
+ public async asyncVideoBots(
+ request: Gooey.VideoBotsPageRequest,
+ requestOptions?: CopilotForYourEnterprise.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/video-bots/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.VideoBotsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusVideoBotsRequest} request
+ * @param {CopilotForYourEnterprise.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.copilotForYourEnterprise.statusVideoBots({
+ * runId: "run_id"
+ * })
+ */
+ public async statusVideoBots(
+ request: Gooey.StatusVideoBotsRequest,
+ requestOptions?: CopilotForYourEnterprise.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/video-bots/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.VideoBotsPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/copilotForYourEnterprise/client/index.ts b/src/api/resources/copilotForYourEnterprise/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/copilotForYourEnterprise/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/copilotForYourEnterprise/client/requests/StatusVideoBotsRequest.ts b/src/api/resources/copilotForYourEnterprise/client/requests/StatusVideoBotsRequest.ts
new file mode 100644
index 0000000..9716870
--- /dev/null
+++ b/src/api/resources/copilotForYourEnterprise/client/requests/StatusVideoBotsRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusVideoBotsRequest {
+ runId: string;
+}
diff --git a/src/api/resources/copilotForYourEnterprise/client/requests/index.ts b/src/api/resources/copilotForYourEnterprise/client/requests/index.ts
new file mode 100644
index 0000000..0af344c
--- /dev/null
+++ b/src/api/resources/copilotForYourEnterprise/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusVideoBotsRequest } from "./StatusVideoBotsRequest";
diff --git a/src/api/resources/copilotForYourEnterprise/index.ts b/src/api/resources/copilotForYourEnterprise/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/copilotForYourEnterprise/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/copilotIntegrations/client/Client.ts b/src/api/resources/copilotIntegrations/client/Client.ts
new file mode 100644
index 0000000..22cfeb0
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/client/Client.ts
@@ -0,0 +1,210 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CopilotIntegrations {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CopilotIntegrations {
+ constructor(protected readonly _options: CopilotIntegrations.Options) {}
+
+ /**
+ * @param {Gooey.CreateStreamRequest} request
+ * @param {CopilotIntegrations.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ *
+ * @example
+ * await client.copilotIntegrations.videoBotsStreamCreate({
+ * integrationId: "integration_id"
+ * })
+ */
+ public async videoBotsStreamCreate(
+ request: Gooey.CreateStreamRequest,
+ requestOptions?: CopilotIntegrations.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/integrations/stream/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CreateStreamRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CreateStreamResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {string} requestId
+ * @param {CopilotIntegrations.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ *
+ * @example
+ * await client.copilotIntegrations.videoBotsStream("request_id")
+ */
+ public async videoBotsStream(
+ requestId: string,
+ requestOptions?: CopilotIntegrations.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(
+ await core.Supplier.get(this._options.environment),
+ `v3/integrations/stream/${encodeURIComponent(requestId)}/`
+ ),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.VideoBotsStreamResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/copilotIntegrations/client/index.ts b/src/api/resources/copilotIntegrations/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/copilotIntegrations/client/requests/CreateStreamRequest.ts b/src/api/resources/copilotIntegrations/client/requests/CreateStreamRequest.ts
new file mode 100644
index 0000000..cb6cab5
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/client/requests/CreateStreamRequest.ts
@@ -0,0 +1,120 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as Gooey from "../../../../index";
+
+/**
+ * @example
+ * {
+ * integrationId: "integration_id"
+ * }
+ */
+export interface CreateStreamRequest {
+ /** Your Integration ID as shown in the Copilot Integrations tab */
+ integrationId: string;
+ /**
+ * The gooey conversation ID.
+ *
+ * If not provided, a new conversation will be started and a new ID will be returned in the response. Use this to maintain the state of the conversation between requests.
+ *
+ * Note that you may not provide a custom ID here, and must only use the `conversation_id` returned in a previous response.
+ */
+ conversationId?: string;
+ /**
+ * Your app's custom user ID.
+ *
+ * If not provided, a random user will be created and a new ID will be returned in the response. If a `conversation_id` is provided, this field is automatically set to the user's id associated with that conversation.
+ */
+ userId?: string;
+ /**
+ * Your app's custom message ID for the user message.
+ *
+ * If not provided, a random ID will be generated and returned in the response. This is useful for tracking messages in the conversation.
+ */
+ userMessageId?: string;
+ /** The button that was pressed by the user. */
+ buttonPressed?: Gooey.ButtonPressed;
+ functions?: Gooey.RecipeFunction[];
+ /** Variables to be used as Jinja prompt templates and in functions as arguments */
+ variables?: Record;
+ inputPrompt?: string;
+ inputAudio?: string;
+ inputImages?: string[];
+ inputDocuments?: string[];
+ /** Select a workflow to extract text from documents and images. */
+ docExtractUrl?: string;
+ messages?: Gooey.ConversationEntry[];
+ botScript?: string;
+ selectedModel?: Gooey.CreateStreamRequestSelectedModel;
+ /** When your copilot users upload a photo or pdf, what kind of document are they mostly likely to upload? (via [Azure](https://learn.microsoft.com/en-us/azure/ai-services/document-intelligence/how-to-guides/use-sdk-rest-api?view=doc-intel-3.1.0&tabs=linux&pivots=programming-language-rest-api)) */
+ documentModel?: string;
+ avoidRepetition?: boolean;
+ numOutputs?: number;
+ quality?: number;
+ maxTokens?: number;
+ samplingTemperature?: number;
+ taskInstructions?: string;
+ queryInstructions?: string;
+ keywordInstructions?: string;
+ documents?: string[];
+ maxReferences?: number;
+ maxContextWords?: number;
+ scrollJump?: number;
+ embeddingModel?: Gooey.CreateStreamRequestEmbeddingModel;
+ /**
+ * Weightage for dense vs sparse embeddings. `0` for sparse, `1` for dense, `0.5` for equal weight.
+ * Generally speaking, dense embeddings excel at understanding the context of the query, whereas sparse vectors excel at keyword matches.
+ *
+ */
+ denseWeight?: number;
+ citationStyle?: Gooey.CreateStreamRequestCitationStyle;
+ useUrlShortener?: boolean;
+ /** Choose a model to transcribe incoming audio messages to text. */
+ asrModel?: Gooey.CreateStreamRequestAsrModel;
+ /** Choose a language to transcribe incoming audio messages to text. */
+ asrLanguage?: string;
+ translationModel?: Gooey.CreateStreamRequestTranslationModel;
+ /** Choose a language to translate incoming text & audio messages to English and responses back to your selected language. Useful for low-resource languages. */
+ userLanguage?: string;
+ /**
+ * Translation Glossary for User Langauge -> LLM Language (English)
+ *
+ */
+ inputGlossaryDocument?: string;
+ /**
+ * Translation Glossary for LLM Language (English) -> User Langauge
+ *
+ */
+ outputGlossaryDocument?: string;
+ lipsyncModel?: Gooey.CreateStreamRequestLipsyncModel;
+ /** Give your copilot superpowers by giving it access to tools. Powered by [Function calling](https://platform.openai.com/docs/guides/function-calling). */
+ tools?: Gooey.LlmTools[];
+ ttsProvider?: Gooey.CreateStreamRequestTtsProvider;
+ uberduckVoiceName?: string;
+ uberduckSpeakingRate?: number;
+ googleVoiceName?: string;
+ googleSpeakingRate?: number;
+ googlePitch?: number;
+ barkHistoryPrompt?: string;
+ /** Use `elevenlabs_voice_id` instead */
+ elevenlabsVoiceName?: string;
+ elevenlabsApiKey?: string;
+ elevenlabsVoiceId?: string;
+ elevenlabsModel?: string;
+ elevenlabsStability?: number;
+ elevenlabsSimilarityBoost?: number;
+ elevenlabsStyle?: number;
+ elevenlabsSpeakerBoost?: boolean;
+ azureVoiceName?: string;
+ openaiVoiceName?: Gooey.CreateStreamRequestOpenaiVoiceName;
+ openaiTtsModel?: Gooey.CreateStreamRequestOpenaiTtsModel;
+ inputFace?: string;
+ facePaddingTop?: number;
+ facePaddingBottom?: number;
+ facePaddingLeft?: number;
+ facePaddingRight?: number;
+ sadtalkerSettings?: Gooey.SadTalkerSettings;
+ /** Use `input_prompt` instead */
+ inputText?: string;
+}
diff --git a/src/api/resources/copilotIntegrations/client/requests/index.ts b/src/api/resources/copilotIntegrations/client/requests/index.ts
new file mode 100644
index 0000000..23ce184
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/client/requests/index.ts
@@ -0,0 +1 @@
+export { type CreateStreamRequest } from "./CreateStreamRequest";
diff --git a/src/api/resources/copilotIntegrations/index.ts b/src/api/resources/copilotIntegrations/index.ts
new file mode 100644
index 0000000..c9240f8
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/index.ts
@@ -0,0 +1,2 @@
+export * from "./types";
+export * from "./client";
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestAsrModel.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestAsrModel.ts
new file mode 100644
index 0000000..1bb9e2e
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestAsrModel.ts
@@ -0,0 +1,37 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * Choose a model to transcribe incoming audio messages to text.
+ */
+export type CreateStreamRequestAsrModel =
+ | "whisper_large_v2"
+ | "whisper_large_v3"
+ | "whisper_hindi_large_v2"
+ | "whisper_telugu_large_v2"
+ | "nemo_english"
+ | "nemo_hindi"
+ | "vakyansh_bhojpuri"
+ | "gcp_v1"
+ | "usm"
+ | "deepgram"
+ | "azure"
+ | "seamless_m4t"
+ | "mms_1b_all";
+
+export const CreateStreamRequestAsrModel = {
+ WhisperLargeV2: "whisper_large_v2",
+ WhisperLargeV3: "whisper_large_v3",
+ WhisperHindiLargeV2: "whisper_hindi_large_v2",
+ WhisperTeluguLargeV2: "whisper_telugu_large_v2",
+ NemoEnglish: "nemo_english",
+ NemoHindi: "nemo_hindi",
+ VakyanshBhojpuri: "vakyansh_bhojpuri",
+ GcpV1: "gcp_v1",
+ Usm: "usm",
+ Deepgram: "deepgram",
+ Azure: "azure",
+ SeamlessM4T: "seamless_m4t",
+ Mms1BAll: "mms_1b_all",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestCitationStyle.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestCitationStyle.ts
new file mode 100644
index 0000000..b39af08
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestCitationStyle.ts
@@ -0,0 +1,40 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestCitationStyle =
+ | "number"
+ | "title"
+ | "url"
+ | "symbol"
+ | "markdown"
+ | "html"
+ | "slack_mrkdwn"
+ | "plaintext"
+ | "number_markdown"
+ | "number_html"
+ | "number_slack_mrkdwn"
+ | "number_plaintext"
+ | "symbol_markdown"
+ | "symbol_html"
+ | "symbol_slack_mrkdwn"
+ | "symbol_plaintext";
+
+export const CreateStreamRequestCitationStyle = {
+ Number: "number",
+ Title: "title",
+ Url: "url",
+ Symbol: "symbol",
+ Markdown: "markdown",
+ Html: "html",
+ SlackMrkdwn: "slack_mrkdwn",
+ Plaintext: "plaintext",
+ NumberMarkdown: "number_markdown",
+ NumberHtml: "number_html",
+ NumberSlackMrkdwn: "number_slack_mrkdwn",
+ NumberPlaintext: "number_plaintext",
+ SymbolMarkdown: "symbol_markdown",
+ SymbolHtml: "symbol_html",
+ SymbolSlackMrkdwn: "symbol_slack_mrkdwn",
+ SymbolPlaintext: "symbol_plaintext",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestEmbeddingModel.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestEmbeddingModel.ts
new file mode 100644
index 0000000..bcdb6f6
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestEmbeddingModel.ts
@@ -0,0 +1,26 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestEmbeddingModel =
+ | "openai_3_large"
+ | "openai_3_small"
+ | "openai_ada_2"
+ | "e5_large_v2"
+ | "e5_base_v2"
+ | "multilingual_e5_base"
+ | "multilingual_e5_large"
+ | "gte_large"
+ | "gte_base";
+
+export const CreateStreamRequestEmbeddingModel = {
+ Openai3Large: "openai_3_large",
+ Openai3Small: "openai_3_small",
+ OpenaiAda2: "openai_ada_2",
+ E5LargeV2: "e5_large_v2",
+ E5BaseV2: "e5_base_v2",
+ MultilingualE5Base: "multilingual_e5_base",
+ MultilingualE5Large: "multilingual_e5_large",
+ GteLarge: "gte_large",
+ GteBase: "gte_base",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestLipsyncModel.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestLipsyncModel.ts
new file mode 100644
index 0000000..d5dd301
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestLipsyncModel.ts
@@ -0,0 +1,10 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestLipsyncModel = "Wav2Lip" | "SadTalker";
+
+export const CreateStreamRequestLipsyncModel = {
+ Wav2Lip: "Wav2Lip",
+ SadTalker: "SadTalker",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiTtsModel.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiTtsModel.ts
new file mode 100644
index 0000000..c9913e9
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiTtsModel.ts
@@ -0,0 +1,10 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestOpenaiTtsModel = "tts_1" | "tts_1_hd";
+
+export const CreateStreamRequestOpenaiTtsModel = {
+ Tts1: "tts_1",
+ Tts1Hd: "tts_1_hd",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiVoiceName.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiVoiceName.ts
new file mode 100644
index 0000000..8f32f34
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestOpenaiVoiceName.ts
@@ -0,0 +1,14 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestOpenaiVoiceName = "alloy" | "echo" | "fable" | "onyx" | "nova" | "shimmer";
+
+export const CreateStreamRequestOpenaiVoiceName = {
+ Alloy: "alloy",
+ Echo: "echo",
+ Fable: "fable",
+ Onyx: "onyx",
+ Nova: "nova",
+ Shimmer: "shimmer",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestSelectedModel.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestSelectedModel.ts
new file mode 100644
index 0000000..840a2b0
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestSelectedModel.ts
@@ -0,0 +1,68 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestSelectedModel =
+ | "gpt_4_o"
+ | "gpt_4_turbo_vision"
+ | "gpt_4_vision"
+ | "gpt_4_turbo"
+ | "gpt_4"
+ | "gpt_4_32k"
+ | "gpt_3_5_turbo"
+ | "gpt_3_5_turbo_16k"
+ | "gpt_3_5_turbo_instruct"
+ | "llama3_70b"
+ | "llama3_8b"
+ | "llama2_70b_chat"
+ | "mixtral_8x7b_instruct_0_1"
+ | "gemma_7b_it"
+ | "gemini_1_5_pro"
+ | "gemini_1_pro_vision"
+ | "gemini_1_pro"
+ | "palm2_chat"
+ | "palm2_text"
+ | "claude_3_5_sonnet"
+ | "claude_3_opus"
+ | "claude_3_sonnet"
+ | "claude_3_haiku"
+ | "sea_lion_7b_instruct"
+ | "text_davinci_003"
+ | "text_davinci_002"
+ | "code_davinci_002"
+ | "text_curie_001"
+ | "text_babbage_001"
+ | "text_ada_001";
+
+export const CreateStreamRequestSelectedModel = {
+ Gpt4O: "gpt_4_o",
+ Gpt4TurboVision: "gpt_4_turbo_vision",
+ Gpt4Vision: "gpt_4_vision",
+ Gpt4Turbo: "gpt_4_turbo",
+ Gpt4: "gpt_4",
+ Gpt432K: "gpt_4_32k",
+ Gpt35Turbo: "gpt_3_5_turbo",
+ Gpt35Turbo16K: "gpt_3_5_turbo_16k",
+ Gpt35TurboInstruct: "gpt_3_5_turbo_instruct",
+ Llama370B: "llama3_70b",
+ Llama38B: "llama3_8b",
+ Llama270BChat: "llama2_70b_chat",
+ Mixtral8X7BInstruct01: "mixtral_8x7b_instruct_0_1",
+ Gemma7BIt: "gemma_7b_it",
+ Gemini15Pro: "gemini_1_5_pro",
+ Gemini1ProVision: "gemini_1_pro_vision",
+ Gemini1Pro: "gemini_1_pro",
+ Palm2Chat: "palm2_chat",
+ Palm2Text: "palm2_text",
+ Claude35Sonnet: "claude_3_5_sonnet",
+ Claude3Opus: "claude_3_opus",
+ Claude3Sonnet: "claude_3_sonnet",
+ Claude3Haiku: "claude_3_haiku",
+ SeaLion7BInstruct: "sea_lion_7b_instruct",
+ TextDavinci003: "text_davinci_003",
+ TextDavinci002: "text_davinci_002",
+ CodeDavinci002: "code_davinci_002",
+ TextCurie001: "text_curie_001",
+ TextBabbage001: "text_babbage_001",
+ TextAda001: "text_ada_001",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestTranslationModel.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestTranslationModel.ts
new file mode 100644
index 0000000..83531f2
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestTranslationModel.ts
@@ -0,0 +1,10 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestTranslationModel = "google" | "ghana_nlp";
+
+export const CreateStreamRequestTranslationModel = {
+ Google: "google",
+ GhanaNlp: "ghana_nlp",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/CreateStreamRequestTtsProvider.ts b/src/api/resources/copilotIntegrations/types/CreateStreamRequestTtsProvider.ts
new file mode 100644
index 0000000..7a8709d
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/CreateStreamRequestTtsProvider.ts
@@ -0,0 +1,20 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+export type CreateStreamRequestTtsProvider =
+ | "GOOGLE_TTS"
+ | "ELEVEN_LABS"
+ | "UBERDUCK"
+ | "BARK"
+ | "AZURE_TTS"
+ | "OPEN_AI";
+
+export const CreateStreamRequestTtsProvider = {
+ GoogleTts: "GOOGLE_TTS",
+ ElevenLabs: "ELEVEN_LABS",
+ Uberduck: "UBERDUCK",
+ Bark: "BARK",
+ AzureTts: "AZURE_TTS",
+ OpenAi: "OPEN_AI",
+} as const;
diff --git a/src/api/resources/copilotIntegrations/types/VideoBotsStreamResponse.ts b/src/api/resources/copilotIntegrations/types/VideoBotsStreamResponse.ts
new file mode 100644
index 0000000..71ddac8
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/VideoBotsStreamResponse.ts
@@ -0,0 +1,12 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as Gooey from "../../../index";
+
+export type VideoBotsStreamResponse =
+ | Gooey.ConversationStart
+ | Gooey.RunStart
+ | Gooey.MessagePart
+ | Gooey.FinalResponse
+ | Gooey.StreamError;
diff --git a/src/api/resources/copilotIntegrations/types/index.ts b/src/api/resources/copilotIntegrations/types/index.ts
new file mode 100644
index 0000000..5429f0e
--- /dev/null
+++ b/src/api/resources/copilotIntegrations/types/index.ts
@@ -0,0 +1,10 @@
+export * from "./CreateStreamRequestSelectedModel";
+export * from "./CreateStreamRequestEmbeddingModel";
+export * from "./CreateStreamRequestCitationStyle";
+export * from "./CreateStreamRequestAsrModel";
+export * from "./CreateStreamRequestTranslationModel";
+export * from "./CreateStreamRequestLipsyncModel";
+export * from "./CreateStreamRequestTtsProvider";
+export * from "./CreateStreamRequestOpenaiVoiceName";
+export * from "./CreateStreamRequestOpenaiTtsModel";
+export * from "./VideoBotsStreamResponse";
diff --git a/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/Client.ts b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/Client.ts
new file mode 100644
index 0000000..603c5cc
--- /dev/null
+++ b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/Client.ts
@@ -0,0 +1,344 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace CreateAPerfectSeoOptimizedTitleParagraph {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class CreateAPerfectSeoOptimizedTitleParagraph {
+ constructor(protected readonly _options: CreateAPerfectSeoOptimizedTitleParagraph.Options) {}
+
+ /**
+ * @param {Gooey.SeoSummaryPageRequest} request
+ * @param {CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.createAPerfectSeoOptimizedTitleParagraph.seoSummary({
+ * searchQuery: "search_query",
+ * keywords: "keywords",
+ * title: "title",
+ * companyUrl: "company_url"
+ * })
+ */
+ public async seoSummary(
+ request: Gooey.SeoSummaryPageRequest,
+ requestOptions?: CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/SEOSummary/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.SeoSummaryPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.SeoSummaryPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.SeoSummaryPageRequest} request
+ * @param {CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.createAPerfectSeoOptimizedTitleParagraph.asyncSeoSummary({
+ * searchQuery: "search_query",
+ * keywords: "keywords",
+ * title: "title",
+ * companyUrl: "company_url"
+ * })
+ */
+ public async asyncSeoSummary(
+ request: Gooey.SeoSummaryPageRequest,
+ requestOptions?: CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/SEOSummary/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.SeoSummaryPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusSeoSummaryRequest} request
+ * @param {CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.createAPerfectSeoOptimizedTitleParagraph.statusSeoSummary({
+ * runId: "run_id"
+ * })
+ */
+ public async statusSeoSummary(
+ request: Gooey.StatusSeoSummaryRequest,
+ requestOptions?: CreateAPerfectSeoOptimizedTitleParagraph.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/SEOSummary/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.SeoSummaryPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/index.ts b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/StatusSeoSummaryRequest.ts b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/StatusSeoSummaryRequest.ts
new file mode 100644
index 0000000..3e8214d
--- /dev/null
+++ b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/StatusSeoSummaryRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusSeoSummaryRequest {
+ runId: string;
+}
diff --git a/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/index.ts b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/index.ts
new file mode 100644
index 0000000..22806d4
--- /dev/null
+++ b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusSeoSummaryRequest } from "./StatusSeoSummaryRequest";
diff --git a/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/index.ts b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/createAPerfectSeoOptimizedTitleParagraph/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/editAnImageWithAiPrompt/client/Client.ts b/src/api/resources/editAnImageWithAiPrompt/client/Client.ts
new file mode 100644
index 0000000..16cd97b
--- /dev/null
+++ b/src/api/resources/editAnImageWithAiPrompt/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace EditAnImageWithAiPrompt {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class EditAnImageWithAiPrompt {
+ constructor(protected readonly _options: EditAnImageWithAiPrompt.Options) {}
+
+ /**
+ * @param {Gooey.Img2ImgPageRequest} request
+ * @param {EditAnImageWithAiPrompt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.editAnImageWithAiPrompt.img2Img({
+ * inputImage: "input_image"
+ * })
+ */
+ public async img2Img(
+ request: Gooey.Img2ImgPageRequest,
+ requestOptions?: EditAnImageWithAiPrompt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/Img2Img/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.Img2ImgPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.Img2ImgPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.Img2ImgPageRequest} request
+ * @param {EditAnImageWithAiPrompt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.editAnImageWithAiPrompt.asyncImg2Img({
+ * inputImage: "input_image"
+ * })
+ */
+ public async asyncImg2Img(
+ request: Gooey.Img2ImgPageRequest,
+ requestOptions?: EditAnImageWithAiPrompt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/Img2Img/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.Img2ImgPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusImg2ImgRequest} request
+ * @param {EditAnImageWithAiPrompt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.editAnImageWithAiPrompt.statusImg2Img({
+ * runId: "run_id"
+ * })
+ */
+ public async statusImg2Img(
+ request: Gooey.StatusImg2ImgRequest,
+ requestOptions?: EditAnImageWithAiPrompt.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/Img2Img/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.Img2ImgPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/editAnImageWithAiPrompt/client/index.ts b/src/api/resources/editAnImageWithAiPrompt/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/editAnImageWithAiPrompt/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/editAnImageWithAiPrompt/client/requests/StatusImg2ImgRequest.ts b/src/api/resources/editAnImageWithAiPrompt/client/requests/StatusImg2ImgRequest.ts
new file mode 100644
index 0000000..14c71ff
--- /dev/null
+++ b/src/api/resources/editAnImageWithAiPrompt/client/requests/StatusImg2ImgRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusImg2ImgRequest {
+ runId: string;
+}
diff --git a/src/api/resources/editAnImageWithAiPrompt/client/requests/index.ts b/src/api/resources/editAnImageWithAiPrompt/client/requests/index.ts
new file mode 100644
index 0000000..586bd45
--- /dev/null
+++ b/src/api/resources/editAnImageWithAiPrompt/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusImg2ImgRequest } from "./StatusImg2ImgRequest";
diff --git a/src/api/resources/editAnImageWithAiPrompt/index.ts b/src/api/resources/editAnImageWithAiPrompt/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/editAnImageWithAiPrompt/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/embeddings/client/Client.ts b/src/api/resources/embeddings/client/Client.ts
new file mode 100644
index 0000000..a382a31
--- /dev/null
+++ b/src/api/resources/embeddings/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace Embeddings {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class Embeddings {
+ constructor(protected readonly _options: Embeddings.Options) {}
+
+ /**
+ * @param {Gooey.EmbeddingsPageRequest} request
+ * @param {Embeddings.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.embeddings.post({
+ * texts: ["texts"]
+ * })
+ */
+ public async post(
+ request: Gooey.EmbeddingsPageRequest,
+ requestOptions?: Embeddings.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/embeddings/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.EmbeddingsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.EmbeddingsPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.EmbeddingsPageRequest} request
+ * @param {Embeddings.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.embeddings.asyncEmbeddings({
+ * texts: ["texts"]
+ * })
+ */
+ public async asyncEmbeddings(
+ request: Gooey.EmbeddingsPageRequest,
+ requestOptions?: Embeddings.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/embeddings/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.EmbeddingsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusEmbeddingsRequest} request
+ * @param {Embeddings.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.embeddings.statusEmbeddings({
+ * runId: "run_id"
+ * })
+ */
+ public async statusEmbeddings(
+ request: Gooey.StatusEmbeddingsRequest,
+ requestOptions?: Embeddings.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/embeddings/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.EmbeddingsPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/embeddings/client/index.ts b/src/api/resources/embeddings/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/embeddings/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/embeddings/client/requests/StatusEmbeddingsRequest.ts b/src/api/resources/embeddings/client/requests/StatusEmbeddingsRequest.ts
new file mode 100644
index 0000000..ca63624
--- /dev/null
+++ b/src/api/resources/embeddings/client/requests/StatusEmbeddingsRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusEmbeddingsRequest {
+ runId: string;
+}
diff --git a/src/api/resources/embeddings/client/requests/index.ts b/src/api/resources/embeddings/client/requests/index.ts
new file mode 100644
index 0000000..e45c447
--- /dev/null
+++ b/src/api/resources/embeddings/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusEmbeddingsRequest } from "./StatusEmbeddingsRequest";
diff --git a/src/api/resources/embeddings/index.ts b/src/api/resources/embeddings/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/embeddings/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/evaluator/client/Client.ts b/src/api/resources/evaluator/client/Client.ts
new file mode 100644
index 0000000..08202e5
--- /dev/null
+++ b/src/api/resources/evaluator/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace Evaluator {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class Evaluator {
+ constructor(protected readonly _options: Evaluator.Options) {}
+
+ /**
+ * @param {Gooey.BulkEvalPageRequest} request
+ * @param {Evaluator.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.evaluator.bulkEval({
+ * documents: ["documents"]
+ * })
+ */
+ public async bulkEval(
+ request: Gooey.BulkEvalPageRequest,
+ requestOptions?: Evaluator.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/bulk-eval/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.BulkEvalPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.BulkEvalPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.BulkEvalPageRequest} request
+ * @param {Evaluator.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.evaluator.asyncBulkEval({
+ * documents: ["documents"]
+ * })
+ */
+ public async asyncBulkEval(
+ request: Gooey.BulkEvalPageRequest,
+ requestOptions?: Evaluator.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/bulk-eval/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.BulkEvalPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusBulkEvalRequest} request
+ * @param {Evaluator.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.evaluator.statusBulkEval({
+ * runId: "run_id"
+ * })
+ */
+ public async statusBulkEval(
+ request: Gooey.StatusBulkEvalRequest,
+ requestOptions?: Evaluator.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/bulk-eval/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.BulkEvalPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/evaluator/client/index.ts b/src/api/resources/evaluator/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/evaluator/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/evaluator/client/requests/StatusBulkEvalRequest.ts b/src/api/resources/evaluator/client/requests/StatusBulkEvalRequest.ts
new file mode 100644
index 0000000..e255f2c
--- /dev/null
+++ b/src/api/resources/evaluator/client/requests/StatusBulkEvalRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusBulkEvalRequest {
+ runId: string;
+}
diff --git a/src/api/resources/evaluator/client/requests/index.ts b/src/api/resources/evaluator/client/requests/index.ts
new file mode 100644
index 0000000..f2b0115
--- /dev/null
+++ b/src/api/resources/evaluator/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusBulkEvalRequest } from "./StatusBulkEvalRequest";
diff --git a/src/api/resources/evaluator/index.ts b/src/api/resources/evaluator/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/evaluator/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/functions/client/Client.ts b/src/api/resources/functions/client/Client.ts
new file mode 100644
index 0000000..ed75282
--- /dev/null
+++ b/src/api/resources/functions/client/Client.ts
@@ -0,0 +1,334 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace Functions {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class Functions {
+ constructor(protected readonly _options: Functions.Options) {}
+
+ /**
+ * @param {Gooey.FunctionsPageRequest} request
+ * @param {Functions.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.functions.post({})
+ */
+ public async post(
+ request: Gooey.FunctionsPageRequest,
+ requestOptions?: Functions.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/functions/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.FunctionsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.FunctionsPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.FunctionsPageRequest} request
+ * @param {Functions.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.functions.asyncFunctions({})
+ */
+ public async asyncFunctions(
+ request: Gooey.FunctionsPageRequest,
+ requestOptions?: Functions.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/functions/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.FunctionsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusFunctionsRequest} request
+ * @param {Functions.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.functions.statusFunctions({
+ * runId: "run_id"
+ * })
+ */
+ public async statusFunctions(
+ request: Gooey.StatusFunctionsRequest,
+ requestOptions?: Functions.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/functions/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.FunctionsPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/functions/client/index.ts b/src/api/resources/functions/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/functions/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/functions/client/requests/StatusFunctionsRequest.ts b/src/api/resources/functions/client/requests/StatusFunctionsRequest.ts
new file mode 100644
index 0000000..b1b78f5
--- /dev/null
+++ b/src/api/resources/functions/client/requests/StatusFunctionsRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusFunctionsRequest {
+ runId: string;
+}
diff --git a/src/api/resources/functions/client/requests/index.ts b/src/api/resources/functions/client/requests/index.ts
new file mode 100644
index 0000000..72ec7eb
--- /dev/null
+++ b/src/api/resources/functions/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusFunctionsRequest } from "./StatusFunctionsRequest";
diff --git a/src/api/resources/functions/index.ts b/src/api/resources/functions/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/functions/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/generatePeopleAlsoAskSeoContent/client/Client.ts b/src/api/resources/generatePeopleAlsoAskSeoContent/client/Client.ts
new file mode 100644
index 0000000..c96fb7d
--- /dev/null
+++ b/src/api/resources/generatePeopleAlsoAskSeoContent/client/Client.ts
@@ -0,0 +1,340 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace GeneratePeopleAlsoAskSeoContent {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class GeneratePeopleAlsoAskSeoContent {
+ constructor(protected readonly _options: GeneratePeopleAlsoAskSeoContent.Options) {}
+
+ /**
+ * @param {Gooey.RelatedQnAPageRequest} request
+ * @param {GeneratePeopleAlsoAskSeoContent.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.generatePeopleAlsoAskSeoContent.relatedQnaMaker({
+ * searchQuery: "search_query",
+ * siteFilter: "site_filter"
+ * })
+ */
+ public async relatedQnaMaker(
+ request: Gooey.RelatedQnAPageRequest,
+ requestOptions?: GeneratePeopleAlsoAskSeoContent.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/related-qna-maker/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.RelatedQnAPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.RelatedQnAPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.RelatedQnAPageRequest} request
+ * @param {GeneratePeopleAlsoAskSeoContent.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.generatePeopleAlsoAskSeoContent.asyncRelatedQnaMaker({
+ * searchQuery: "search_query",
+ * siteFilter: "site_filter"
+ * })
+ */
+ public async asyncRelatedQnaMaker(
+ request: Gooey.RelatedQnAPageRequest,
+ requestOptions?: GeneratePeopleAlsoAskSeoContent.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/related-qna-maker/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.RelatedQnAPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusRelatedQnaMakerRequest} request
+ * @param {GeneratePeopleAlsoAskSeoContent.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.generatePeopleAlsoAskSeoContent.statusRelatedQnaMaker({
+ * runId: "run_id"
+ * })
+ */
+ public async statusRelatedQnaMaker(
+ request: Gooey.StatusRelatedQnaMakerRequest,
+ requestOptions?: GeneratePeopleAlsoAskSeoContent.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/related-qna-maker/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.RelatedQnAPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/generatePeopleAlsoAskSeoContent/client/index.ts b/src/api/resources/generatePeopleAlsoAskSeoContent/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/generatePeopleAlsoAskSeoContent/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/StatusRelatedQnaMakerRequest.ts b/src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/StatusRelatedQnaMakerRequest.ts
new file mode 100644
index 0000000..dad50ad
--- /dev/null
+++ b/src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/StatusRelatedQnaMakerRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusRelatedQnaMakerRequest {
+ runId: string;
+}
diff --git a/src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/index.ts b/src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/index.ts
new file mode 100644
index 0000000..940c0ba
--- /dev/null
+++ b/src/api/resources/generatePeopleAlsoAskSeoContent/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusRelatedQnaMakerRequest } from "./StatusRelatedQnaMakerRequest";
diff --git a/src/api/resources/generatePeopleAlsoAskSeoContent/index.ts b/src/api/resources/generatePeopleAlsoAskSeoContent/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/generatePeopleAlsoAskSeoContent/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/generateProductPhotoBackgrounds/client/Client.ts b/src/api/resources/generateProductPhotoBackgrounds/client/Client.ts
new file mode 100644
index 0000000..ce75f14
--- /dev/null
+++ b/src/api/resources/generateProductPhotoBackgrounds/client/Client.ts
@@ -0,0 +1,340 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace GenerateProductPhotoBackgrounds {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class GenerateProductPhotoBackgrounds {
+ constructor(protected readonly _options: GenerateProductPhotoBackgrounds.Options) {}
+
+ /**
+ * @param {Gooey.ObjectInpaintingPageRequest} request
+ * @param {GenerateProductPhotoBackgrounds.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.generateProductPhotoBackgrounds.objectInpainting({
+ * inputImage: "input_image",
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async objectInpainting(
+ request: Gooey.ObjectInpaintingPageRequest,
+ requestOptions?: GenerateProductPhotoBackgrounds.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/ObjectInpainting/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.ObjectInpaintingPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.ObjectInpaintingPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.ObjectInpaintingPageRequest} request
+ * @param {GenerateProductPhotoBackgrounds.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.generateProductPhotoBackgrounds.asyncObjectInpainting({
+ * inputImage: "input_image",
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async asyncObjectInpainting(
+ request: Gooey.ObjectInpaintingPageRequest,
+ requestOptions?: GenerateProductPhotoBackgrounds.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/ObjectInpainting/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.ObjectInpaintingPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusObjectInpaintingRequest} request
+ * @param {GenerateProductPhotoBackgrounds.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.generateProductPhotoBackgrounds.statusObjectInpainting({
+ * runId: "run_id"
+ * })
+ */
+ public async statusObjectInpainting(
+ request: Gooey.StatusObjectInpaintingRequest,
+ requestOptions?: GenerateProductPhotoBackgrounds.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/ObjectInpainting/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.ObjectInpaintingPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/generateProductPhotoBackgrounds/client/index.ts b/src/api/resources/generateProductPhotoBackgrounds/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/generateProductPhotoBackgrounds/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/generateProductPhotoBackgrounds/client/requests/StatusObjectInpaintingRequest.ts b/src/api/resources/generateProductPhotoBackgrounds/client/requests/StatusObjectInpaintingRequest.ts
new file mode 100644
index 0000000..beac513
--- /dev/null
+++ b/src/api/resources/generateProductPhotoBackgrounds/client/requests/StatusObjectInpaintingRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusObjectInpaintingRequest {
+ runId: string;
+}
diff --git a/src/api/resources/generateProductPhotoBackgrounds/client/requests/index.ts b/src/api/resources/generateProductPhotoBackgrounds/client/requests/index.ts
new file mode 100644
index 0000000..99040de
--- /dev/null
+++ b/src/api/resources/generateProductPhotoBackgrounds/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusObjectInpaintingRequest } from "./StatusObjectInpaintingRequest";
diff --git a/src/api/resources/generateProductPhotoBackgrounds/index.ts b/src/api/resources/generateProductPhotoBackgrounds/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/generateProductPhotoBackgrounds/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/index.ts b/src/api/resources/index.ts
new file mode 100644
index 0000000..9d9e75c
--- /dev/null
+++ b/src/api/resources/index.ts
@@ -0,0 +1,71 @@
+export * as copilotIntegrations from "./copilotIntegrations";
+export * from "./copilotIntegrations/types";
+export * as copilotForYourEnterprise from "./copilotForYourEnterprise";
+export * as aiAnimationGenerator from "./aiAnimationGenerator";
+export * as aiArtQrCode from "./aiArtQrCode";
+export * as generatePeopleAlsoAskSeoContent from "./generatePeopleAlsoAskSeoContent";
+export * as createAPerfectSeoOptimizedTitleParagraph from "./createAPerfectSeoOptimizedTitleParagraph";
+export * as webSearchGpt3 from "./webSearchGpt3";
+export * as profileLookupGpt3ForAiPersonalizedEmails from "./profileLookupGpt3ForAiPersonalizedEmails";
+export * as bulkRunner from "./bulkRunner";
+export * as evaluator from "./evaluator";
+export * as syntheticDataMakerForVideosPdFs from "./syntheticDataMakerForVideosPdFs";
+export * as largeLanguageModelsGpt3 from "./largeLanguageModelsGpt3";
+export * as searchYourDocsWithGpt from "./searchYourDocsWithGpt";
+export * as smartGpt from "./smartGpt";
+export * as summarizeYourDocsWithGpt from "./summarizeYourDocsWithGpt";
+export * as functions from "./functions";
+export * as lipSyncing from "./lipSyncing";
+export * as lipsyncVideoWithAnyText from "./lipsyncVideoWithAnyText";
+export * as compareAiVoiceGenerators from "./compareAiVoiceGenerators";
+export * as speechRecognitionTranslation from "./speechRecognitionTranslation";
+export * as textGuidedAudioGenerator from "./textGuidedAudioGenerator";
+export * as compareAiTranslations from "./compareAiTranslations";
+export * as editAnImageWithAiPrompt from "./editAnImageWithAiPrompt";
+export * as compareAiImageGenerators from "./compareAiImageGenerators";
+export * as generateProductPhotoBackgrounds from "./generateProductPhotoBackgrounds";
+export * as aiImageWithAFace from "./aiImageWithAFace";
+export * as aiGeneratedPhotoFromEmailProfileLookup from "./aiGeneratedPhotoFromEmailProfileLookup";
+export * as renderImageSearchResultsWithAi from "./renderImageSearchResultsWithAi";
+export * as aiBackgroundChanger from "./aiBackgroundChanger";
+export * as compareAiImageUpscalers from "./compareAiImageUpscalers";
+export * as chyronPlantBot from "./chyronPlantBot";
+export * as letterWriter from "./letterWriter";
+export * as embeddings from "./embeddings";
+export * as peopleAlsoAskAnswersFromADoc from "./peopleAlsoAskAnswersFromADoc";
+export * as misc from "./misc";
+export * from "./copilotIntegrations/client/requests";
+export * from "./copilotForYourEnterprise/client/requests";
+export * from "./aiAnimationGenerator/client/requests";
+export * from "./aiArtQrCode/client/requests";
+export * from "./generatePeopleAlsoAskSeoContent/client/requests";
+export * from "./createAPerfectSeoOptimizedTitleParagraph/client/requests";
+export * from "./webSearchGpt3/client/requests";
+export * from "./profileLookupGpt3ForAiPersonalizedEmails/client/requests";
+export * from "./bulkRunner/client/requests";
+export * from "./evaluator/client/requests";
+export * from "./syntheticDataMakerForVideosPdFs/client/requests";
+export * from "./largeLanguageModelsGpt3/client/requests";
+export * from "./searchYourDocsWithGpt/client/requests";
+export * from "./smartGpt/client/requests";
+export * from "./summarizeYourDocsWithGpt/client/requests";
+export * from "./functions/client/requests";
+export * from "./lipSyncing/client/requests";
+export * from "./lipsyncVideoWithAnyText/client/requests";
+export * from "./compareAiVoiceGenerators/client/requests";
+export * from "./speechRecognitionTranslation/client/requests";
+export * from "./textGuidedAudioGenerator/client/requests";
+export * from "./compareAiTranslations/client/requests";
+export * from "./editAnImageWithAiPrompt/client/requests";
+export * from "./compareAiImageGenerators/client/requests";
+export * from "./generateProductPhotoBackgrounds/client/requests";
+export * from "./aiImageWithAFace/client/requests";
+export * from "./aiGeneratedPhotoFromEmailProfileLookup/client/requests";
+export * from "./renderImageSearchResultsWithAi/client/requests";
+export * from "./aiBackgroundChanger/client/requests";
+export * from "./compareAiImageUpscalers/client/requests";
+export * from "./chyronPlantBot/client/requests";
+export * from "./letterWriter/client/requests";
+export * from "./embeddings/client/requests";
+export * from "./peopleAlsoAskAnswersFromADoc/client/requests";
+export * from "./misc/client/requests";
diff --git a/src/api/resources/largeLanguageModelsGpt3/client/Client.ts b/src/api/resources/largeLanguageModelsGpt3/client/Client.ts
new file mode 100644
index 0000000..0693b54
--- /dev/null
+++ b/src/api/resources/largeLanguageModelsGpt3/client/Client.ts
@@ -0,0 +1,334 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace LargeLanguageModelsGpt3 {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class LargeLanguageModelsGpt3 {
+ constructor(protected readonly _options: LargeLanguageModelsGpt3.Options) {}
+
+ /**
+ * @param {Gooey.CompareLlmPageRequest} request
+ * @param {LargeLanguageModelsGpt3.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.largeLanguageModelsGpt3.compareLlm({})
+ */
+ public async compareLlm(
+ request: Gooey.CompareLlmPageRequest,
+ requestOptions?: LargeLanguageModelsGpt3.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/CompareLLM/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CompareLlmPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CompareLlmPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.CompareLlmPageRequest} request
+ * @param {LargeLanguageModelsGpt3.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.largeLanguageModelsGpt3.asyncCompareLlm({})
+ */
+ public async asyncCompareLlm(
+ request: Gooey.CompareLlmPageRequest,
+ requestOptions?: LargeLanguageModelsGpt3.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/CompareLLM/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.CompareLlmPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusCompareLlmRequest} request
+ * @param {LargeLanguageModelsGpt3.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.largeLanguageModelsGpt3.statusCompareLlm({
+ * runId: "run_id"
+ * })
+ */
+ public async statusCompareLlm(
+ request: Gooey.StatusCompareLlmRequest,
+ requestOptions?: LargeLanguageModelsGpt3.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/CompareLLM/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.CompareLlmPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/largeLanguageModelsGpt3/client/index.ts b/src/api/resources/largeLanguageModelsGpt3/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/largeLanguageModelsGpt3/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/largeLanguageModelsGpt3/client/requests/StatusCompareLlmRequest.ts b/src/api/resources/largeLanguageModelsGpt3/client/requests/StatusCompareLlmRequest.ts
new file mode 100644
index 0000000..fa3a066
--- /dev/null
+++ b/src/api/resources/largeLanguageModelsGpt3/client/requests/StatusCompareLlmRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusCompareLlmRequest {
+ runId: string;
+}
diff --git a/src/api/resources/largeLanguageModelsGpt3/client/requests/index.ts b/src/api/resources/largeLanguageModelsGpt3/client/requests/index.ts
new file mode 100644
index 0000000..178d80e
--- /dev/null
+++ b/src/api/resources/largeLanguageModelsGpt3/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusCompareLlmRequest } from "./StatusCompareLlmRequest";
diff --git a/src/api/resources/largeLanguageModelsGpt3/index.ts b/src/api/resources/largeLanguageModelsGpt3/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/largeLanguageModelsGpt3/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/letterWriter/client/Client.ts b/src/api/resources/letterWriter/client/Client.ts
new file mode 100644
index 0000000..dea5de6
--- /dev/null
+++ b/src/api/resources/letterWriter/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace LetterWriter {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class LetterWriter {
+ constructor(protected readonly _options: LetterWriter.Options) {}
+
+ /**
+ * @param {Gooey.LetterWriterPageRequest} request
+ * @param {LetterWriter.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.letterWriter.letterWriter({
+ * actionId: "action_id"
+ * })
+ */
+ public async letterWriter(
+ request: Gooey.LetterWriterPageRequest,
+ requestOptions?: LetterWriter.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/LetterWriter/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.LetterWriterPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.LetterWriterPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.LetterWriterPageRequest} request
+ * @param {LetterWriter.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.letterWriter.asyncLetterWriter({
+ * actionId: "action_id"
+ * })
+ */
+ public async asyncLetterWriter(
+ request: Gooey.LetterWriterPageRequest,
+ requestOptions?: LetterWriter.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/LetterWriter/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.LetterWriterPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusLetterWriterRequest} request
+ * @param {LetterWriter.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.letterWriter.statusLetterWriter({
+ * runId: "run_id"
+ * })
+ */
+ public async statusLetterWriter(
+ request: Gooey.StatusLetterWriterRequest,
+ requestOptions?: LetterWriter.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/LetterWriter/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.LetterWriterPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/letterWriter/client/index.ts b/src/api/resources/letterWriter/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/letterWriter/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/letterWriter/client/requests/StatusLetterWriterRequest.ts b/src/api/resources/letterWriter/client/requests/StatusLetterWriterRequest.ts
new file mode 100644
index 0000000..d1549d1
--- /dev/null
+++ b/src/api/resources/letterWriter/client/requests/StatusLetterWriterRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusLetterWriterRequest {
+ runId: string;
+}
diff --git a/src/api/resources/letterWriter/client/requests/index.ts b/src/api/resources/letterWriter/client/requests/index.ts
new file mode 100644
index 0000000..784a0f3
--- /dev/null
+++ b/src/api/resources/letterWriter/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusLetterWriterRequest } from "./StatusLetterWriterRequest";
diff --git a/src/api/resources/letterWriter/index.ts b/src/api/resources/letterWriter/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/letterWriter/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/lipSyncing/client/Client.ts b/src/api/resources/lipSyncing/client/Client.ts
new file mode 100644
index 0000000..6292331
--- /dev/null
+++ b/src/api/resources/lipSyncing/client/Client.ts
@@ -0,0 +1,334 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace LipSyncing {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class LipSyncing {
+ constructor(protected readonly _options: LipSyncing.Options) {}
+
+ /**
+ * @param {Gooey.LipsyncPageRequest} request
+ * @param {LipSyncing.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.lipSyncing.lipsync({})
+ */
+ public async lipsync(
+ request: Gooey.LipsyncPageRequest,
+ requestOptions?: LipSyncing.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/Lipsync/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.LipsyncPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.LipsyncPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.LipsyncPageRequest} request
+ * @param {LipSyncing.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.lipSyncing.asyncLipsync({})
+ */
+ public async asyncLipsync(
+ request: Gooey.LipsyncPageRequest,
+ requestOptions?: LipSyncing.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/Lipsync/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.LipsyncPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusLipsyncRequest} request
+ * @param {LipSyncing.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.lipSyncing.statusLipsync({
+ * runId: "run_id"
+ * })
+ */
+ public async statusLipsync(
+ request: Gooey.StatusLipsyncRequest,
+ requestOptions?: LipSyncing.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/Lipsync/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.LipsyncPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/lipSyncing/client/index.ts b/src/api/resources/lipSyncing/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/lipSyncing/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/lipSyncing/client/requests/StatusLipsyncRequest.ts b/src/api/resources/lipSyncing/client/requests/StatusLipsyncRequest.ts
new file mode 100644
index 0000000..1d0100f
--- /dev/null
+++ b/src/api/resources/lipSyncing/client/requests/StatusLipsyncRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusLipsyncRequest {
+ runId: string;
+}
diff --git a/src/api/resources/lipSyncing/client/requests/index.ts b/src/api/resources/lipSyncing/client/requests/index.ts
new file mode 100644
index 0000000..6f132c7
--- /dev/null
+++ b/src/api/resources/lipSyncing/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusLipsyncRequest } from "./StatusLipsyncRequest";
diff --git a/src/api/resources/lipSyncing/index.ts b/src/api/resources/lipSyncing/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/lipSyncing/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/lipsyncVideoWithAnyText/client/Client.ts b/src/api/resources/lipsyncVideoWithAnyText/client/Client.ts
new file mode 100644
index 0000000..d6302ed
--- /dev/null
+++ b/src/api/resources/lipsyncVideoWithAnyText/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace LipsyncVideoWithAnyText {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class LipsyncVideoWithAnyText {
+ constructor(protected readonly _options: LipsyncVideoWithAnyText.Options) {}
+
+ /**
+ * @param {Gooey.LipsyncTtsPageRequest} request
+ * @param {LipsyncVideoWithAnyText.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.lipsyncVideoWithAnyText.lipsyncTts({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async lipsyncTts(
+ request: Gooey.LipsyncTtsPageRequest,
+ requestOptions?: LipsyncVideoWithAnyText.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/LipsyncTTS/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.LipsyncTtsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.LipsyncTtsPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.LipsyncTtsPageRequest} request
+ * @param {LipsyncVideoWithAnyText.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.lipsyncVideoWithAnyText.asyncLipsyncTts({
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async asyncLipsyncTts(
+ request: Gooey.LipsyncTtsPageRequest,
+ requestOptions?: LipsyncVideoWithAnyText.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/LipsyncTTS/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.LipsyncTtsPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusLipsyncTtsRequest} request
+ * @param {LipsyncVideoWithAnyText.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.lipsyncVideoWithAnyText.statusLipsyncTts({
+ * runId: "run_id"
+ * })
+ */
+ public async statusLipsyncTts(
+ request: Gooey.StatusLipsyncTtsRequest,
+ requestOptions?: LipsyncVideoWithAnyText.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/LipsyncTTS/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.LipsyncTtsPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/lipsyncVideoWithAnyText/client/index.ts b/src/api/resources/lipsyncVideoWithAnyText/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/lipsyncVideoWithAnyText/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/lipsyncVideoWithAnyText/client/requests/StatusLipsyncTtsRequest.ts b/src/api/resources/lipsyncVideoWithAnyText/client/requests/StatusLipsyncTtsRequest.ts
new file mode 100644
index 0000000..9765333
--- /dev/null
+++ b/src/api/resources/lipsyncVideoWithAnyText/client/requests/StatusLipsyncTtsRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusLipsyncTtsRequest {
+ runId: string;
+}
diff --git a/src/api/resources/lipsyncVideoWithAnyText/client/requests/index.ts b/src/api/resources/lipsyncVideoWithAnyText/client/requests/index.ts
new file mode 100644
index 0000000..76a4b21
--- /dev/null
+++ b/src/api/resources/lipsyncVideoWithAnyText/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusLipsyncTtsRequest } from "./StatusLipsyncTtsRequest";
diff --git a/src/api/resources/lipsyncVideoWithAnyText/index.ts b/src/api/resources/lipsyncVideoWithAnyText/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/lipsyncVideoWithAnyText/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/misc/client/Client.ts b/src/api/resources/misc/client/Client.ts
new file mode 100644
index 0000000..ca3c48e
--- /dev/null
+++ b/src/api/resources/misc/client/Client.ts
@@ -0,0 +1,252 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import urlJoin from "url-join";
+import * as serializers from "../../../../serialization/index";
+import * as errors from "../../../../errors/index";
+
+export declare namespace Misc {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class Misc {
+ constructor(protected readonly _options: Misc.Options) {}
+
+ /**
+ * @param {Misc.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.UnprocessableEntityError}
+ *
+ * @example
+ * await client.misc.getBalance()
+ */
+ public async getBalance(requestOptions?: Misc.RequestOptions): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v1/balance/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.BalanceResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.BotBroadcastRequestModel} request
+ * @param {Misc.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.UnprocessableEntityError}
+ *
+ * @example
+ * await client.misc.videoBotsBroadcast({
+ * text: "text"
+ * })
+ */
+ public async videoBotsBroadcast(
+ request: Gooey.BotBroadcastRequestModel,
+ requestOptions?: Misc.RequestOptions
+ ): Promise {
+ const { exampleId, runId, ..._body } = request;
+ const _queryParams: Record = {};
+ if (exampleId != null) {
+ _queryParams["example_id"] = exampleId;
+ }
+
+ if (runId != null) {
+ _queryParams["run_id"] = runId;
+ }
+
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/video-bots/broadcast/send/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ body: serializers.BotBroadcastRequestModel.jsonOrThrow(_body, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return _response.body;
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Misc.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @example
+ * await client.misc.health()
+ */
+ public async health(requestOptions?: Misc.RequestOptions): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: await core.Supplier.get(this._options.environment),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return _response.body;
+ }
+
+ if (_response.error.reason === "status-code") {
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/misc/client/index.ts b/src/api/resources/misc/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/misc/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/misc/client/requests/BotBroadcastRequestModel.ts b/src/api/resources/misc/client/requests/BotBroadcastRequestModel.ts
new file mode 100644
index 0000000..267b83e
--- /dev/null
+++ b/src/api/resources/misc/client/requests/BotBroadcastRequestModel.ts
@@ -0,0 +1,28 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as Gooey from "../../../../index";
+
+/**
+ * @example
+ * {
+ * text: "text"
+ * }
+ */
+export interface BotBroadcastRequestModel {
+ exampleId?: string;
+ runId?: string;
+ /** Message to broadcast to all users */
+ text: string;
+ /** Audio URL to send to all users */
+ audio?: string;
+ /** Video URL to send to all users */
+ video?: string;
+ /** Video URL to send to all users */
+ documents?: string[];
+ /** Buttons to send to all users */
+ buttons?: Gooey.ReplyButton[];
+ /** Filters to select users to broadcast to. If not provided, will broadcast to all users of this bot. */
+ filters?: Gooey.BotBroadcastFilters;
+}
diff --git a/src/api/resources/misc/client/requests/index.ts b/src/api/resources/misc/client/requests/index.ts
new file mode 100644
index 0000000..24aff2a
--- /dev/null
+++ b/src/api/resources/misc/client/requests/index.ts
@@ -0,0 +1 @@
+export { type BotBroadcastRequestModel } from "./BotBroadcastRequestModel";
diff --git a/src/api/resources/misc/index.ts b/src/api/resources/misc/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/misc/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/peopleAlsoAskAnswersFromADoc/client/Client.ts b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/Client.ts
new file mode 100644
index 0000000..7543f33
--- /dev/null
+++ b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace PeopleAlsoAskAnswersFromADoc {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class PeopleAlsoAskAnswersFromADoc {
+ constructor(protected readonly _options: PeopleAlsoAskAnswersFromADoc.Options) {}
+
+ /**
+ * @param {Gooey.RelatedQnADocPageRequest} request
+ * @param {PeopleAlsoAskAnswersFromADoc.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.peopleAlsoAskAnswersFromADoc.relatedQnaMakerDoc({
+ * searchQuery: "search_query"
+ * })
+ */
+ public async relatedQnaMakerDoc(
+ request: Gooey.RelatedQnADocPageRequest,
+ requestOptions?: PeopleAlsoAskAnswersFromADoc.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/related-qna-maker-doc/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.RelatedQnADocPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.RelatedQnADocPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.RelatedQnADocPageRequest} request
+ * @param {PeopleAlsoAskAnswersFromADoc.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.peopleAlsoAskAnswersFromADoc.asyncRelatedQnaMakerDoc({
+ * searchQuery: "search_query"
+ * })
+ */
+ public async asyncRelatedQnaMakerDoc(
+ request: Gooey.RelatedQnADocPageRequest,
+ requestOptions?: PeopleAlsoAskAnswersFromADoc.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/related-qna-maker-doc/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.RelatedQnADocPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusRelatedQnaMakerDocRequest} request
+ * @param {PeopleAlsoAskAnswersFromADoc.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.peopleAlsoAskAnswersFromADoc.statusRelatedQnaMakerDoc({
+ * runId: "run_id"
+ * })
+ */
+ public async statusRelatedQnaMakerDoc(
+ request: Gooey.StatusRelatedQnaMakerDocRequest,
+ requestOptions?: PeopleAlsoAskAnswersFromADoc.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/related-qna-maker-doc/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.RelatedQnADocPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/peopleAlsoAskAnswersFromADoc/client/index.ts b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/StatusRelatedQnaMakerDocRequest.ts b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/StatusRelatedQnaMakerDocRequest.ts
new file mode 100644
index 0000000..a23e62a
--- /dev/null
+++ b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/StatusRelatedQnaMakerDocRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusRelatedQnaMakerDocRequest {
+ runId: string;
+}
diff --git a/src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/index.ts b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/index.ts
new file mode 100644
index 0000000..800f18b
--- /dev/null
+++ b/src/api/resources/peopleAlsoAskAnswersFromADoc/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusRelatedQnaMakerDocRequest } from "./StatusRelatedQnaMakerDocRequest";
diff --git a/src/api/resources/peopleAlsoAskAnswersFromADoc/index.ts b/src/api/resources/peopleAlsoAskAnswersFromADoc/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/peopleAlsoAskAnswersFromADoc/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/Client.ts b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/Client.ts
new file mode 100644
index 0000000..5a41c70
--- /dev/null
+++ b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace ProfileLookupGpt3ForAiPersonalizedEmails {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class ProfileLookupGpt3ForAiPersonalizedEmails {
+ constructor(protected readonly _options: ProfileLookupGpt3ForAiPersonalizedEmails.Options) {}
+
+ /**
+ * @param {Gooey.SocialLookupEmailPageRequest} request
+ * @param {ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.profileLookupGpt3ForAiPersonalizedEmails.socialLookupEmail({
+ * emailAddress: "email_address"
+ * })
+ */
+ public async socialLookupEmail(
+ request: Gooey.SocialLookupEmailPageRequest,
+ requestOptions?: ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/SocialLookupEmail/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.SocialLookupEmailPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.SocialLookupEmailPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.SocialLookupEmailPageRequest} request
+ * @param {ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.profileLookupGpt3ForAiPersonalizedEmails.asyncSocialLookupEmail({
+ * emailAddress: "email_address"
+ * })
+ */
+ public async asyncSocialLookupEmail(
+ request: Gooey.SocialLookupEmailPageRequest,
+ requestOptions?: ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/SocialLookupEmail/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.SocialLookupEmailPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusSocialLookupEmailRequest} request
+ * @param {ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.profileLookupGpt3ForAiPersonalizedEmails.statusSocialLookupEmail({
+ * runId: "run_id"
+ * })
+ */
+ public async statusSocialLookupEmail(
+ request: Gooey.StatusSocialLookupEmailRequest,
+ requestOptions?: ProfileLookupGpt3ForAiPersonalizedEmails.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/SocialLookupEmail/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.SocialLookupEmailPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/index.ts b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/StatusSocialLookupEmailRequest.ts b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/StatusSocialLookupEmailRequest.ts
new file mode 100644
index 0000000..bfb431b
--- /dev/null
+++ b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/StatusSocialLookupEmailRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusSocialLookupEmailRequest {
+ runId: string;
+}
diff --git a/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/index.ts b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/index.ts
new file mode 100644
index 0000000..81d3cde
--- /dev/null
+++ b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusSocialLookupEmailRequest } from "./StatusSocialLookupEmailRequest";
diff --git a/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/index.ts b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/profileLookupGpt3ForAiPersonalizedEmails/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/renderImageSearchResultsWithAi/client/Client.ts b/src/api/resources/renderImageSearchResultsWithAi/client/Client.ts
new file mode 100644
index 0000000..2c01998
--- /dev/null
+++ b/src/api/resources/renderImageSearchResultsWithAi/client/Client.ts
@@ -0,0 +1,340 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace RenderImageSearchResultsWithAi {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class RenderImageSearchResultsWithAi {
+ constructor(protected readonly _options: RenderImageSearchResultsWithAi.Options) {}
+
+ /**
+ * @param {Gooey.GoogleImageGenPageRequest} request
+ * @param {RenderImageSearchResultsWithAi.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.renderImageSearchResultsWithAi.googleImageGen({
+ * searchQuery: "search_query",
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async googleImageGen(
+ request: Gooey.GoogleImageGenPageRequest,
+ requestOptions?: RenderImageSearchResultsWithAi.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/GoogleImageGen/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.GoogleImageGenPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.GoogleImageGenPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.GoogleImageGenPageRequest} request
+ * @param {RenderImageSearchResultsWithAi.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.renderImageSearchResultsWithAi.asyncGoogleImageGen({
+ * searchQuery: "search_query",
+ * textPrompt: "text_prompt"
+ * })
+ */
+ public async asyncGoogleImageGen(
+ request: Gooey.GoogleImageGenPageRequest,
+ requestOptions?: RenderImageSearchResultsWithAi.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/GoogleImageGen/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.GoogleImageGenPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusGoogleImageGenRequest} request
+ * @param {RenderImageSearchResultsWithAi.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.renderImageSearchResultsWithAi.statusGoogleImageGen({
+ * runId: "run_id"
+ * })
+ */
+ public async statusGoogleImageGen(
+ request: Gooey.StatusGoogleImageGenRequest,
+ requestOptions?: RenderImageSearchResultsWithAi.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/GoogleImageGen/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.GoogleImageGenPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/renderImageSearchResultsWithAi/client/index.ts b/src/api/resources/renderImageSearchResultsWithAi/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/renderImageSearchResultsWithAi/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/renderImageSearchResultsWithAi/client/requests/StatusGoogleImageGenRequest.ts b/src/api/resources/renderImageSearchResultsWithAi/client/requests/StatusGoogleImageGenRequest.ts
new file mode 100644
index 0000000..2582d30
--- /dev/null
+++ b/src/api/resources/renderImageSearchResultsWithAi/client/requests/StatusGoogleImageGenRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusGoogleImageGenRequest {
+ runId: string;
+}
diff --git a/src/api/resources/renderImageSearchResultsWithAi/client/requests/index.ts b/src/api/resources/renderImageSearchResultsWithAi/client/requests/index.ts
new file mode 100644
index 0000000..c4f0f2a
--- /dev/null
+++ b/src/api/resources/renderImageSearchResultsWithAi/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusGoogleImageGenRequest } from "./StatusGoogleImageGenRequest";
diff --git a/src/api/resources/renderImageSearchResultsWithAi/index.ts b/src/api/resources/renderImageSearchResultsWithAi/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/renderImageSearchResultsWithAi/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/searchYourDocsWithGpt/client/Client.ts b/src/api/resources/searchYourDocsWithGpt/client/Client.ts
new file mode 100644
index 0000000..d214d7e
--- /dev/null
+++ b/src/api/resources/searchYourDocsWithGpt/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace SearchYourDocsWithGpt {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class SearchYourDocsWithGpt {
+ constructor(protected readonly _options: SearchYourDocsWithGpt.Options) {}
+
+ /**
+ * @param {Gooey.DocSearchPageRequest} request
+ * @param {SearchYourDocsWithGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.searchYourDocsWithGpt.docSearch({
+ * searchQuery: "search_query"
+ * })
+ */
+ public async docSearch(
+ request: Gooey.DocSearchPageRequest,
+ requestOptions?: SearchYourDocsWithGpt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/doc-search/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.DocSearchPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.DocSearchPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.DocSearchPageRequest} request
+ * @param {SearchYourDocsWithGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.searchYourDocsWithGpt.asyncDocSearch({
+ * searchQuery: "search_query"
+ * })
+ */
+ public async asyncDocSearch(
+ request: Gooey.DocSearchPageRequest,
+ requestOptions?: SearchYourDocsWithGpt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/doc-search/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.DocSearchPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusDocSearchRequest} request
+ * @param {SearchYourDocsWithGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.searchYourDocsWithGpt.statusDocSearch({
+ * runId: "run_id"
+ * })
+ */
+ public async statusDocSearch(
+ request: Gooey.StatusDocSearchRequest,
+ requestOptions?: SearchYourDocsWithGpt.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/doc-search/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.DocSearchPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/searchYourDocsWithGpt/client/index.ts b/src/api/resources/searchYourDocsWithGpt/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/searchYourDocsWithGpt/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/searchYourDocsWithGpt/client/requests/StatusDocSearchRequest.ts b/src/api/resources/searchYourDocsWithGpt/client/requests/StatusDocSearchRequest.ts
new file mode 100644
index 0000000..85ef51b
--- /dev/null
+++ b/src/api/resources/searchYourDocsWithGpt/client/requests/StatusDocSearchRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusDocSearchRequest {
+ runId: string;
+}
diff --git a/src/api/resources/searchYourDocsWithGpt/client/requests/index.ts b/src/api/resources/searchYourDocsWithGpt/client/requests/index.ts
new file mode 100644
index 0000000..433aaf6
--- /dev/null
+++ b/src/api/resources/searchYourDocsWithGpt/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusDocSearchRequest } from "./StatusDocSearchRequest";
diff --git a/src/api/resources/searchYourDocsWithGpt/index.ts b/src/api/resources/searchYourDocsWithGpt/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/searchYourDocsWithGpt/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/smartGpt/client/Client.ts b/src/api/resources/smartGpt/client/Client.ts
new file mode 100644
index 0000000..a647abb
--- /dev/null
+++ b/src/api/resources/smartGpt/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace SmartGpt {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class SmartGpt {
+ constructor(protected readonly _options: SmartGpt.Options) {}
+
+ /**
+ * @param {Gooey.SmartGptPageRequest} request
+ * @param {SmartGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.smartGpt.post({
+ * inputPrompt: "input_prompt"
+ * })
+ */
+ public async post(
+ request: Gooey.SmartGptPageRequest,
+ requestOptions?: SmartGpt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/SmartGPT/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.SmartGptPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.SmartGptPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.SmartGptPageRequest} request
+ * @param {SmartGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.smartGpt.asyncSmartGpt({
+ * inputPrompt: "input_prompt"
+ * })
+ */
+ public async asyncSmartGpt(
+ request: Gooey.SmartGptPageRequest,
+ requestOptions?: SmartGpt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/SmartGPT/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.SmartGptPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusSmartGptRequest} request
+ * @param {SmartGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.smartGpt.statusSmartGpt({
+ * runId: "run_id"
+ * })
+ */
+ public async statusSmartGpt(
+ request: Gooey.StatusSmartGptRequest,
+ requestOptions?: SmartGpt.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/SmartGPT/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.SmartGptPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/smartGpt/client/index.ts b/src/api/resources/smartGpt/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/smartGpt/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/smartGpt/client/requests/StatusSmartGptRequest.ts b/src/api/resources/smartGpt/client/requests/StatusSmartGptRequest.ts
new file mode 100644
index 0000000..97168bd
--- /dev/null
+++ b/src/api/resources/smartGpt/client/requests/StatusSmartGptRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusSmartGptRequest {
+ runId: string;
+}
diff --git a/src/api/resources/smartGpt/client/requests/index.ts b/src/api/resources/smartGpt/client/requests/index.ts
new file mode 100644
index 0000000..d6766fa
--- /dev/null
+++ b/src/api/resources/smartGpt/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusSmartGptRequest } from "./StatusSmartGptRequest";
diff --git a/src/api/resources/smartGpt/index.ts b/src/api/resources/smartGpt/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/smartGpt/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/speechRecognitionTranslation/client/Client.ts b/src/api/resources/speechRecognitionTranslation/client/Client.ts
new file mode 100644
index 0000000..ca641a1
--- /dev/null
+++ b/src/api/resources/speechRecognitionTranslation/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace SpeechRecognitionTranslation {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class SpeechRecognitionTranslation {
+ constructor(protected readonly _options: SpeechRecognitionTranslation.Options) {}
+
+ /**
+ * @param {Gooey.AsrPageRequest} request
+ * @param {SpeechRecognitionTranslation.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.speechRecognitionTranslation.asr({
+ * documents: ["documents"]
+ * })
+ */
+ public async asr(
+ request: Gooey.AsrPageRequest,
+ requestOptions?: SpeechRecognitionTranslation.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/asr/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.AsrPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsrPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.AsrPageRequest} request
+ * @param {SpeechRecognitionTranslation.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.speechRecognitionTranslation.asyncAsr({
+ * documents: ["documents"]
+ * })
+ */
+ public async asyncAsr(
+ request: Gooey.AsrPageRequest,
+ requestOptions?: SpeechRecognitionTranslation.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/asr/async/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.AsrPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsyncApiResponseModelV3.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.StatusAsrRequest} request
+ * @param {SpeechRecognitionTranslation.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.speechRecognitionTranslation.statusAsr({
+ * runId: "run_id"
+ * })
+ */
+ public async statusAsr(
+ request: Gooey.StatusAsrRequest,
+ requestOptions?: SpeechRecognitionTranslation.RequestOptions
+ ): Promise {
+ const { runId } = request;
+ const _queryParams: Record = {};
+ _queryParams["run_id"] = runId;
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v3/asr/status/"),
+ method: "GET",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ queryParameters: _queryParams,
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.AsrPageStatusResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ protected async _getAuthorizationHeader(): Promise {
+ const bearer = (await core.Supplier.get(this._options.apiKey)) ?? process?.env["FERN_API_KEY"];
+ if (bearer != null) {
+ return `Bearer ${bearer}`;
+ }
+
+ return undefined;
+ }
+
+ protected async _getCustomAuthorizationHeaders() {
+ const authorizationValue = await core.Supplier.get(this._options.authorization);
+ return { Authorization: authorizationValue };
+ }
+}
diff --git a/src/api/resources/speechRecognitionTranslation/client/index.ts b/src/api/resources/speechRecognitionTranslation/client/index.ts
new file mode 100644
index 0000000..415726b
--- /dev/null
+++ b/src/api/resources/speechRecognitionTranslation/client/index.ts
@@ -0,0 +1 @@
+export * from "./requests";
diff --git a/src/api/resources/speechRecognitionTranslation/client/requests/StatusAsrRequest.ts b/src/api/resources/speechRecognitionTranslation/client/requests/StatusAsrRequest.ts
new file mode 100644
index 0000000..dcff613
--- /dev/null
+++ b/src/api/resources/speechRecognitionTranslation/client/requests/StatusAsrRequest.ts
@@ -0,0 +1,13 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+/**
+ * @example
+ * {
+ * runId: "run_id"
+ * }
+ */
+export interface StatusAsrRequest {
+ runId: string;
+}
diff --git a/src/api/resources/speechRecognitionTranslation/client/requests/index.ts b/src/api/resources/speechRecognitionTranslation/client/requests/index.ts
new file mode 100644
index 0000000..1445e2b
--- /dev/null
+++ b/src/api/resources/speechRecognitionTranslation/client/requests/index.ts
@@ -0,0 +1 @@
+export { type StatusAsrRequest } from "./StatusAsrRequest";
diff --git a/src/api/resources/speechRecognitionTranslation/index.ts b/src/api/resources/speechRecognitionTranslation/index.ts
new file mode 100644
index 0000000..5ec7692
--- /dev/null
+++ b/src/api/resources/speechRecognitionTranslation/index.ts
@@ -0,0 +1 @@
+export * from "./client";
diff --git a/src/api/resources/summarizeYourDocsWithGpt/client/Client.ts b/src/api/resources/summarizeYourDocsWithGpt/client/Client.ts
new file mode 100644
index 0000000..aedeeeb
--- /dev/null
+++ b/src/api/resources/summarizeYourDocsWithGpt/client/Client.ts
@@ -0,0 +1,338 @@
+/**
+ * This file was auto-generated by Fern from our API Definition.
+ */
+
+import * as core from "../../../../core";
+import * as Gooey from "../../../index";
+import * as serializers from "../../../../serialization/index";
+import urlJoin from "url-join";
+import * as errors from "../../../../errors/index";
+
+export declare namespace SummarizeYourDocsWithGpt {
+ interface Options {
+ environment: core.Supplier;
+ apiKey?: core.Supplier;
+ /** Override the Authorization header */
+ authorization?: core.Supplier;
+ fetcher?: core.FetchFunction;
+ }
+
+ interface RequestOptions {
+ /** The maximum time to wait for a response in seconds. */
+ timeoutInSeconds?: number;
+ /** The number of times to retry the request. Defaults to 2. */
+ maxRetries?: number;
+ /** A hook to abort the request. */
+ abortSignal?: AbortSignal;
+ /** Override the Authorization header */
+ authorization?: string | undefined;
+ }
+}
+
+export class SummarizeYourDocsWithGpt {
+ constructor(protected readonly _options: SummarizeYourDocsWithGpt.Options) {}
+
+ /**
+ * @param {Gooey.DocSummaryPageRequest} request
+ * @param {SummarizeYourDocsWithGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ * @throws {@link Gooey.InternalServerError}
+ *
+ * @example
+ * await client.summarizeYourDocsWithGpt.docSummary({
+ * documents: ["documents"]
+ * })
+ */
+ public async docSummary(
+ request: Gooey.DocSummaryPageRequest,
+ requestOptions?: SummarizeYourDocsWithGpt.RequestOptions
+ ): Promise {
+ const _response = await (this._options.fetcher ?? core.fetcher)({
+ url: urlJoin(await core.Supplier.get(this._options.environment), "v2/doc-summary/"),
+ method: "POST",
+ headers: {
+ Authorization: await this._getAuthorizationHeader(),
+ "X-Fern-Language": "JavaScript",
+ "X-Fern-SDK-Name": "gooey",
+ "X-Fern-SDK-Version": "0.0.1",
+ "X-Fern-Runtime": core.RUNTIME.type,
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
+ ...(await this._getCustomAuthorizationHeaders()),
+ },
+ contentType: "application/json",
+ body: serializers.DocSummaryPageRequest.jsonOrThrow(request, { unrecognizedObjectKeys: "strip" }),
+ timeoutMs: requestOptions?.timeoutInSeconds != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
+ maxRetries: requestOptions?.maxRetries,
+ abortSignal: requestOptions?.abortSignal,
+ });
+ if (_response.ok) {
+ return serializers.DocSummaryPageResponse.parseOrThrow(_response.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ });
+ }
+
+ if (_response.error.reason === "status-code") {
+ switch (_response.error.statusCode) {
+ case 402:
+ throw new Gooey.PaymentRequiredError(_response.error.body);
+ case 422:
+ throw new Gooey.UnprocessableEntityError(
+ serializers.HttpValidationError.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 429:
+ throw new Gooey.TooManyRequestsError(
+ serializers.GenericErrorResponse.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ case 500:
+ throw new Gooey.InternalServerError(
+ serializers.FailedReponseModelV2.parseOrThrow(_response.error.body, {
+ unrecognizedObjectKeys: "passthrough",
+ allowUnrecognizedUnionMembers: true,
+ allowUnrecognizedEnumValues: true,
+ skipValidation: true,
+ breadcrumbsPrefix: ["response"],
+ })
+ );
+ default:
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.body,
+ });
+ }
+ }
+
+ switch (_response.error.reason) {
+ case "non-json":
+ throw new errors.GooeyError({
+ statusCode: _response.error.statusCode,
+ body: _response.error.rawBody,
+ });
+ case "timeout":
+ throw new errors.GooeyTimeoutError();
+ case "unknown":
+ throw new errors.GooeyError({
+ message: _response.error.errorMessage,
+ });
+ }
+ }
+
+ /**
+ * @param {Gooey.DocSummaryPageRequest} request
+ * @param {SummarizeYourDocsWithGpt.RequestOptions} requestOptions - Request-specific configuration.
+ *
+ * @throws {@link Gooey.PaymentRequiredError}
+ * @throws {@link Gooey.UnprocessableEntityError}
+ * @throws {@link Gooey.TooManyRequestsError}
+ *
+ * @example
+ * await client.summarizeYourDocsWithGpt.asyncDocSummary({
+ * documents: ["documents"]
+ * })
+ */
+ public async asyncDocSummary(
+ request: Gooey.DocSummaryPageRequest,
+ requestOptions?: SummarizeYourDocsWithGpt.RequestOptions
+ ): Promise